1# IBatteryInterface
2
3
4## 概述
5
6获取、订阅电池信息的接口。
7
8**起始版本:** 3.1
9
10**相关模块:**[Battery](battery_v20.md)
11
12
13## 汇总
14
15
16### Public 成员函数
17
18| 名称 | 描述 |
19| -------- | -------- |
20| [Register](#register) ([in] [IBatteryCallback](interface_i_battery_callback_v20.md) event) | 注册电池信息的回调。 |
21| [UnRegister](#unregister) () | 取消注册电池信息的回调。 |
22| [ChangePath](#changepath) ([in] String path) | 设置电池信息节点的路径。 |
23| [GetCapacity](#getcapacity) ([out] int capacity) | 获取电池的电量百分比。 |
24| [GetVoltage](#getvoltage) ([out] int voltage) | 获取电池的电压。 |
25| [GetTemperature](#gettemperature) ([out] int temperature) | 获取电池的充电温度,单位0.1摄氏度。 |
26| [GetHealthState](#gethealthstate) ([out] enum [BatteryHealthState](battery_v20.md#batteryhealthstate) healthState) | 获取电池的健康状态。 |
27| [GetPluggedType](#getpluggedtype) ([out] enum [BatteryPluggedType](battery_v20.md#batterypluggedtype) pluggedType) | 获取充电设备类型。 |
28| [GetChargeState](#getchargestate) ([out] enum [BatteryChargeState](battery_v20.md#batterychargestate) chargeState) | 获取充电状态。 |
29| [GetPresent](#getpresent) ([out] boolean present) | 获取是否支持电池或者电池是否在位。 |
30| [GetTechnology](#gettechnology) ([out] String technology) | 获取电池的技术型号。 |
31| [GetTotalEnergy](#gettotalenergy) ([out] int totalEnergy) | 获取电池的总容量。 |
32| [GetCurrentAverage](#getcurrentaverage) ([out] int curAverage) | 获取电池的平均电流。 |
33| [GetCurrentNow](#getcurrentnow) ([out] int curNow) | 获取电池的实时电流。 |
34| [GetRemainEnergy](#getremainenergy) ([out] int remainEnergy) | 获取电池的剩余容量。 |
35| [GetBatteryInfo](#getbatteryinfo) ([out] struct [BatteryInfo](_battery_info_v20.md) info) | 获取电池的全部信息。 |
36| [SetChargingLimit](#setcharginglimit) ([in] struct [ChargingLimit](_charging_limit_v20.md)[] chargingLimit) | 设置电池充电电流或电压限制。 |
37| [GetChargeType](#getchargetype) ([out] enum [ChargeType](battery_v20.md#chargetype) type) | 获取插入的充电器类型。 |
38| [SetBatteryConfig](#setbatteryconfig) ([in] String sceneName, [in] String value) | 根据场景名称设置电池配置 。 |
39| [GetBatteryConfig](#getbatteryconfig) ([in] String sceneName, [out] String value) | 根据场景名称获取电池配置 。 |
40| [IsBatteryConfigSupported](#isbatteryconfigsupported) ([in] String sceneName, [out] boolean value) | 通过场景名称检查电池配置是否启用。 |
41
42
43## 成员函数说明
44
45
46### ChangePath()
47
48```
49IBatteryInterface::ChangePath ([in] String path)
50```
51
52**描述**
53
54设置电池信息节点的路径。
55
56**起始版本:** 3.1
57
58**参数:**
59
60| 名称 | 描述 |
61| -------- | -------- |
62| path | 输入参数,电池信息节点的路径。 |
63
64**返回:**
65
66HDF_SUCCESS 表示注册成功。
67
68HDF_FAILED 表示注册失败。
69
70
71### GetBatteryConfig()
72
73```
74IBatteryInterface::GetBatteryConfig ([in] String sceneName, [out] String value )
75```
76
77**描述**
78
79根据场景名称获取电池配置 。
80
81**起始版本:** 4.1
82
83**参数:**
84
85| 名称 | 描述 |
86| -------- | -------- |
87| sceneName | 输入参数,电池充电场景名称。 |
88| value | 输出参数,电池组配置值。 |
89
90**返回:**
91
92HDF_SUCCESS 表示注册成功。
93
94HDF_FAILED 表示注册失败。
95
96
97### GetBatteryInfo()
98
99```
100IBatteryInterface::GetBatteryInfo ([out] struct BatteryInfo info)
101```
102
103**描述**
104
105获取电池的全部信息。
106
107**起始版本:** 3.1
108
109**参数:**
110
111| 名称 | 描述 |
112| -------- | -------- |
113| info | 输出参数,电池的全部信息。 |
114
115**返回:**
116
117HDF_SUCCESS 表示注册成功。
118
119HDF_FAILED 表示注册失败。
120
121**参见:**
122
123[BatteryInfo](_battery_info_v20.md)
124
125
126### GetCapacity()
127
128```
129IBatteryInterface::GetCapacity ([out] int capacity)
130```
131
132**描述**
133
134获取电池的电量百分比。
135
136**起始版本:** 3.1
137
138**参数:**
139
140| 名称 | 描述 |
141| -------- | -------- |
142| capacity | 输出参数,表示电量的百分比值 |
143
144**返回:**
145
146HDF_SUCCESS 表示注册成功。
147
148HDF_FAILED 表示注册失败。
149
150
151### GetChargeState()
152
153```
154IBatteryInterface::GetChargeState ([out] enum BatteryChargeState chargeState)
155```
156
157**描述**
158
159获取充电状态。
160
161**起始版本:** 3.1
162
163**参数:**
164
165| 名称 | 描述 |
166| -------- | -------- |
167| chargeState | 输出参数,表示充电状态。 |
168
169**返回:**
170
171HDF_SUCCESS 表示注册成功。
172
173HDF_FAILED 表示注册失败。
174
175**参见:**
176
177[BatteryChargeState](battery_v20.md#batterychargestate)
178
179
180### GetChargeType()
181
182```
183IBatteryInterface::GetChargeType ([out] enum ChargeType type)
184```
185
186**描述**
187
188获取插入的充电器类型。
189
190**起始版本:** 4.0
191
192**参数:**
193
194| 名称 | 描述 |
195| -------- | -------- |
196| type | 输出参数,充电器类型。 |
197
198**返回:**
199
200HDF_SUCCESS 表示注册成功。
201
202HDF_FAILED 表示注册失败。
203
204
205### GetCurrentAverage()
206
207```
208IBatteryInterface::GetCurrentAverage ([out] int curAverage)
209```
210
211**描述**
212
213获取电池的平均电流。
214
215**起始版本:** 3.1
216
217**参数:**
218
219| 名称 | 描述 |
220| -------- | -------- |
221| curAverage | 输出参数,表示电池的平均电流,单位毫安。 |
222
223**返回:**
224
225HDF_SUCCESS 表示注册成功。
226
227HDF_FAILED 表示注册失败。
228
229
230### GetCurrentNow()
231
232```
233IBatteryInterface::GetCurrentNow ([out] int curNow)
234```
235
236**描述**
237
238获取电池的实时电流。
239
240**起始版本:** 3.1
241
242**参数:**
243
244| 名称 | 描述 |
245| -------- | -------- |
246| curNow | 输出参数,表示电池的实时电流,单位毫安。 |
247
248**返回:**
249
250HDF_SUCCESS 表示注册成功。
251
252HDF_FAILED 表示注册失败。
253
254
255### GetHealthState()
256
257```
258IBatteryInterface::GetHealthState ([out] enum BatteryHealthState healthState)
259```
260
261**描述**
262
263获取电池的健康状态。
264
265**起始版本:** 3.1
266
267**参数:**
268
269| 名称 | 描述 |
270| -------- | -------- |
271| healthState | 输出参数,表示电池健康状态。 |
272
273**返回:**
274
275HDF_SUCCESS 表示注册成功。
276
277HDF_FAILED 表示注册失败。
278
279**参见:**
280
281[BatteryHealthState](battery_v20.md#batteryhealthstate)
282
283
284### GetPluggedType()
285
286```
287IBatteryInterface::GetPluggedType ([out] enum BatteryPluggedType pluggedType)
288```
289
290**描述**
291
292获取充电设备类型。
293
294**起始版本:** 3.1
295
296**参数:**
297
298| 名称 | 描述 |
299| -------- | -------- |
300| pluggedType | 输出参数,表示充电设备类型。 |
301
302**返回:**
303
304HDF_SUCCESS 表示注册成功。
305
306HDF_FAILED 表示注册失败。
307
308**参见:**
309
310[BatteryPluggedType](battery_v20.md#batterypluggedtype)
311
312
313### GetPresent()
314
315```
316IBatteryInterface::GetPresent ([out] boolean present)
317```
318
319**描述**
320
321获取是否支持电池或者电池是否在位。
322
323**起始版本:** 3.1
324
325**参数:**
326
327| 名称 | 描述 |
328| -------- | -------- |
329| present | 输出参数,表示是否支持电池或者电池是否在位。true表示支持或在位,false表示不支持或不在位。 |
330
331**返回:**
332
333HDF_SUCCESS 表示注册成功。
334
335HDF_FAILED 表示注册失败。
336
337
338### GetRemainEnergy()
339
340```
341IBatteryInterface::GetRemainEnergy ([out] int remainEnergy)
342```
343
344**描述**
345
346获取电池的剩余容量。
347
348**起始版本:** 3.1
349
350**参数:**
351
352| 名称 | 描述 |
353| -------- | -------- |
354| remainEnergy | 输出参数,表示电池的剩余容量,单位毫安时。 |
355
356**返回:**
357
358HDF_SUCCESS 表示注册成功。
359
360HDF_FAILED 表示注册失败。
361
362
363### GetTechnology()
364
365```
366IBatteryInterface::GetTechnology ([out] String technology)
367```
368
369**描述**
370
371获取电池的技术型号。
372
373**起始版本:** 3.1
374
375**参数:**
376
377| 名称 | 描述 |
378| -------- | -------- |
379| technology | 输出参数,当前电池技术型号。 |
380
381**返回:**
382
383HDF_SUCCESS 表示注册成功。
384
385HDF_FAILED 表示注册失败。
386
387
388### GetTemperature()
389
390```
391IBatteryInterface::GetTemperature ([out] int temperature)
392```
393
394**描述**
395
396获取电池的充电温度,单位0.1摄氏度。
397
398**起始版本:** 3.1
399
400**参数:**
401
402| 名称 | 描述 |
403| -------- | -------- |
404| temperature | 输出参数,表示电池温度。 |
405
406**返回:**
407
408HDF_SUCCESS 表示注册成功。
409
410HDF_FAILED 表示注册失败。
411
412
413### GetTotalEnergy()
414
415```
416IBatteryInterface::GetTotalEnergy ([out] int totalEnergy)
417```
418
419**描述**
420
421获取电池的总容量。
422
423**起始版本:** 3.1
424
425**参数:**
426
427| 名称 | 描述 |
428| -------- | -------- |
429| totalEnergy | 输出参数,表示电池的总容量,单位毫安时。 |
430
431**返回:**
432
433HDF_SUCCESS 表示注册成功。
434
435HDF_FAILED 表示注册失败。
436
437
438### GetVoltage()
439
440```
441IBatteryInterface::GetVoltage ([out] int voltage)
442```
443
444**描述**
445
446获取电池的电压。
447
448**起始版本:** 3.1
449
450**参数:**
451
452| 名称 | 描述 |
453| -------- | -------- |
454| voltage | 输出参数,表示电池的电压。 |
455
456**返回:**
457
458HDF_SUCCESS 表示注册成功。
459
460HDF_FAILED 表示注册失败。
461
462
463### IsBatteryConfigSupported()
464
465```
466IBatteryInterface::IsBatteryConfigSupported ([in] String sceneName, [out] boolean value )
467```
468
469**描述**
470
471通过场景名称检查电池配置是否启用。
472
473**起始版本:** 4.1
474
475**参数:**
476
477| 名称 | 描述 |
478| -------- | -------- |
479| sceneName | 输入参数,电池充电场景名称。 |
480| value | 输出参数,电池配置是否启用。 |
481
482**返回:**
483
484HDF_SUCCESS 表示注册成功。
485
486HDF_FAILED 表示注册失败。
487
488
489### Register()
490
491```
492IBatteryInterface::Register ([in] IBatteryCallback event)
493```
494
495**描述**
496
497注册电池信息的回调。
498
499**起始版本:** 3.1
500
501**参数:**
502
503| 名称 | 描述 |
504| -------- | -------- |
505| event | 注册事件的回调。 |
506
507**返回:**
508
509HDF_SUCCESS 表示注册成功。
510
511HDF_FAILED 表示注册失败。
512
513
514### SetBatteryConfig()
515
516```
517IBatteryInterface::SetBatteryConfig ([in] String sceneName, [in] String value )
518```
519
520**描述**
521
522根据场景名称设置电池配置 。
523
524**起始版本:** 4.1
525
526**参数:**
527
528| 名称 | 描述 |
529| -------- | -------- |
530| sceneName | 输入参数,电池充电场景名称。 |
531| value | 输出参数,电池组配置值。 |
532
533**返回:**
534
535HDF_SUCCESS 表示注册成功。
536
537HDF_FAILED 表示注册失败。
538
539
540### SetChargingLimit()
541
542```
543IBatteryInterface::SetChargingLimit ([in] struct ChargingLimit[] chargingLimit)
544```
545
546**描述**
547
548设置电池充电电流或电压限制。
549
550**起始版本:** 3.2
551
552**参数:**
553
554| 名称 | 描述 |
555| -------- | -------- |
556| [ChargingLimit](_charging_limit_v20.md) | 输入参数,对电池充电电流或电压的限制。 |
557
558**返回:**
559
560HDF_SUCCESS 表示注册成功。
561
562HDF_FAILED 表示注册失败。
563
564
565### UnRegister()
566
567```
568IBatteryInterface::UnRegister ()
569```
570
571**描述**
572
573取消注册电池信息的回调。
574
575**起始版本:** 3.1
576
577**返回:**
578
579HDF_SUCCESS 表示注册成功。
580
581HDF_FAILED 表示注册失败。
582