1# @ohos.batteryStatistics (耗电统计) 2 3该模块提供软硬件耗电统计信息的查询接口。 4 5> **说明:** 6> 7> - 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> - 本模块接口为系统接口。 10 11## 导入模块 12 13```js 14import batteryStats from '@ohos.batteryStatistics'; 15``` 16 17## batteryStats.getBatteryStats 18 19getBatteryStats(): Promise<Array<BatteryStatsInfo>> 20 21获取耗电信息列表。使用Promise异步回调。 22 23**系统接口:** 此接口为系统接口。 24 25**系统能力:** SystemCapability.PowerManager.BatteryStatistics 26 27**返回值:** 28 29| 类型 | 说明 | 30| ----------------------------------------------------- | ------------------------------- | 31| Promise<Array<[BatteryStatsInfo](#batterystatsinfo)>> | Promise对象,返回耗电信息列表。 | 32 33**错误码:** 34 35以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 36 37| 错误码ID | 错误信息 | 38|---------|---------| 39| 4600101 | If connecting to the service failed. | 40 41**示例:** 42 43```js 44batteryStats.getBatteryStats() 45.then(data => { 46 console.info('battery statistics info: ' + data); 47}) 48.catch(err => { 49 console.error('get battery statistics failed, err: ' + err); 50}); 51``` 52 53## batteryStats.getBatteryStats 54 55getBatteryStats(callback: AsyncCallback<Array<BatteryStatsInfo>>): void 56 57获取耗电信息列表。使用callback异步回调。 58 59**系统接口:** 此接口为系统接口。 60 61**系统能力:** SystemCapability.PowerManager.BatteryStatistics 62 63**参数:** 64 65| 参数名 | 类型 | 必填 | 说明 | 66| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ | 67| callback | AsyncCallback<Array<[BatteryStatsInfo](#batterystatsinfo)>> | 是 | 回调函数。当获取耗电信息列表成功,err为undefined,data为获取到的Array<[BatteryStatsInfo](#batterystatsinfo)>>;否则为错误对象。 | 68 69**错误码:** 70 71以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 72 73| 错误码ID | 错误信息 | 74|---------|---------| 75| 4600101 | If connecting to the service failed. | 76 77**示例:** 78 79```js 80batteryStats.getBatteryStats((err, data) => { 81 if (typeof err === 'undefined') { 82 console.info('battery statistics info: ' + data); 83 } else { 84 console.error('get battery statistics failed, err: ' + err); 85 } 86}); 87``` 88 89## batteryStats.getAppPowerValue 90 91getAppPowerValue(uid: number): number 92 93获取应用的耗电量。 94 95**系统接口:** 此接口为系统接口。 96 97**系统能力:** SystemCapability.PowerManager.BatteryStatistics 98 99**参数:** 100 101| 参数名 | 类型 | 必填 | 说明 | 102| ------ | ------ | ---- | ----------- | 103| uid | number | 是 | 应用的UID。 | 104 105**返回值:** 106 107| 类型 | 说明 | 108| ------ | --------------------------------- | 109| number | UID对应应用的耗电量,单位毫安时。 | 110 111**错误码:** 112 113以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 114 115| 错误码ID | 错误信息 | 116|---------|---------| 117| 4600101 | If connecting to the service failed. | 118 119**示例:** 120 121```js 122try { 123 var value = batteryStats.getAppPowerValue(10021); 124 console.info('battery statistics value of app is: ' + value); 125} catch(err) { 126 console.error('get battery statistics value of app failed, err: ' + err); 127} 128``` 129 130## batteryStats.getAppPowerPercent 131 132getAppPowerPercent(uid: number): number 133 134获取应用的耗电百分比。 135 136**系统接口:** 此接口为系统接口。 137 138**系统能力:** SystemCapability.PowerManager.BatteryStatistics 139 140**参数:** 141 142| 参数名 | 类型 | 必填 | 说明 | 143| ------ | ------ | ---- | ----------- | 144| uid | number | 是 | 应用的UID。 | 145 146**返回值:** 147 148| 类型 | 说明 | 149| ------ | ------------------------- | 150| number | UID对应应用的耗电百分比。 | 151 152**错误码:** 153 154以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 155 156| 错误码ID | 错误信息 | 157|---------|---------| 158| 4600101 | If connecting to the service failed. | 159 160**示例:** 161 162```js 163try { 164 var percent = batteryStats.getAppPowerPercent(10021); 165 console.info('battery statistics percent of app is: ' + percent); 166} catch(err) { 167 console.error('get battery statistics percent of app failed, err: ' + err); 168} 169``` 170 171## batteryStats.getHardwareUnitPowerValue 172 173getHardwareUnitPowerValue(type: ConsumptionType): number 174 175根据耗电类型获取硬件单元的耗电量。 176 177**系统接口:** 此接口为系统接口。 178 179**系统能力:** SystemCapability.PowerManager.BatteryStatistics 180 181**参数:** 182 183| 参数名 | 类型 | 必填 | 说明 | 184| ------ | ----------------------------------- | ---- | -------------- | 185| type | [ConsumptionType](#consumptiontype) | 是 | 电量消耗类型。 | 186 187**返回值:** 188 189| 类型 | 说明 | 190| ------ | ------------------------------------------ | 191| number | 电量消耗类型对应硬件的耗电量,单位毫安时。 | 192 193**错误码:** 194 195以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 196 197| 错误码ID | 错误信息 | 198|---------|---------| 199| 4600101 | If connecting to the service failed. | 200 201**示例:** 202 203```js 204try { 205 var value = batteryStats.getHardwareUnitPowerValue(batteryStats.ConsumptionType.CONSUMPTION_TYPE_SCREEN); 206 console.info('battery statistics value of hardware is: ' + value); 207} catch(err) { 208 console.error('get battery statistics percent of hardware failed, err: ' + err); 209} 210``` 211 212## batteryStats.getHardwareUnitPowerPercent 213 214getHardwareUnitPowerPercent(type: ConsumptionType): number 215 216根据耗电类型获取硬件单元的耗电百分比。 217 218**系统接口:** 此接口为系统接口。 219 220**系统能力:** SystemCapability.PowerManager.BatteryStatistics 221 222**参数:** 223 224| 参数名 | 类型 | 必填 | 说明 | 225| ------ | ----------------------------------- | ---- | -------------- | 226| type | [ConsumptionType](#consumptiontype) | 是 | 电量消耗类型。 | 227 228**返回值:** 229 230| 类型 | 说明 | 231| ------ | ---------------------------------- | 232| number | 电量消耗类型对应硬件的耗电百分比。 | 233 234**错误码:** 235 236以下错误码的详细介绍请参见[耗电统计错误码](../errorcodes/errorcode-batteryStatistics.md)。 237 238| 错误码ID | 错误信息 | 239|---------|---------| 240| 4600101 | If connecting to the service failed. | 241 242**示例:** 243 244```js 245try { 246 var percent = batteryStats.getHardwareUnitPowerPercent(batteryStats.ConsumptionType.CONSUMPTION_TYPE_SCREEN); 247 console.info('battery statistics percent of hardware is: ' + percent); 248} catch(err) { 249 console.error('get battery statistics percent of hardware failed, err: ' + err); 250} 251``` 252 253## BatteryStatsInfo 254 255设备的耗电信息。 256 257**系统接口:** 此接口为系统接口。 258 259**系统能力:** SystemCapability.PowerManager.BatteryStatistics 260 261### 属性 262 263| 名称 | 类型 | 可读 | 可写 | 说明 | 264| ----- | ----------------------------------- | ---- | ---- | ---------------------- | 265| uid | number | 是 | 否 | 耗电信息相关的UID。 | 266| type | [ConsumptionType](#consumptiontype) | 是 | 否 | 耗电信息相关的类型。 | 267| power | number | 是 | 否 | 耗电的值,单位毫安时。 | 268 269## ConsumptionType 270 271表示电量消耗类型的枚举值。 272 273**系统接口:** 此接口为系统接口。 274 275**系统能力:** SystemCapability.PowerManager.BatteryStatistics 276 277| 名称 | 值 | 说明 | 278| -------------------------- | ---- | ----------------------------- | 279| CONSUMPTION_TYPE_INVALID | -17 | 表示电量消耗类型未知。 | 280| CONSUMPTION_TYPE_APP | -16 | 表示应用消耗的电量类型。 | 281| CONSUMPTION_TYPE_BLUETOOTH | -15 | 表示蓝牙消耗的电量类型。 | 282| CONSUMPTION_TYPE_IDLE | -14 | 表示CPU空闲时消耗的电量类型。 | 283| CONSUMPTION_TYPE_PHONE | -13 | 表示通话来电消耗的电量类型。 | 284| CONSUMPTION_TYPE_RADIO | -12 | 表示无线通讯消耗的电量类型。 | 285| CONSUMPTION_TYPE_SCREEN | -11 | 表示屏幕消耗的电量类型。 | 286| CONSUMPTION_TYPE_USER | -10 | 表示用户消耗的电量类型。 | 287| CONSUMPTION_TYPE_WIFI | -9 | 表示无线网消耗的电量类型。 | 288