From 9cc08054635de820dd5262c52b0e487e17c67d03 Mon Sep 17 00:00:00 2001 From: Lu Jiang Date: Tue, 22 Feb 2022 18:15:22 +0800 Subject: [PATCH 1/3] Add battery statistics interface to SDK Signed-off-by: Lu Jiang --- api/@ohos.batterystatistics.d.ts | 131 +++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100755 api/@ohos.batterystatistics.d.ts diff --git a/api/@ohos.batterystatistics.d.ts b/api/@ohos.batterystatistics.d.ts new file mode 100755 index 0000000000..9c556972de --- /dev/null +++ b/api/@ohos.batterystatistics.d.ts @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { AsyncCallback } from "./basic"; + +/** + * Provides methods to get power consumption information. + * + * @since 8 + * @SysCap SystemCapability.PowerManager.BatteryStatistics + * @systemapi + * @import import batteryStats from '@ohos.batterystatistics'; + */ +declare namespace batteryStats { + /** + * Describes the consumption type. + * + * @since 8 + * @systemapi + */ + export enum ConsumptionType { + /** Indicates an invalid consumption type */ + CONSUMPTION_TYPE_INVALID = -17, + + /** Indicates the battery power consumption generated by APP */ + CONSUMPTION_TYPE_APP, + + /** Indicates the battery power consumption generated by bluetooth */ + CONSUMPTION_TYPE_BLUETOOTH, + + /** Indicates the battery power consumption generated when the CPU is idle */ + CONSUMPTION_TYPE_IDLE, + + /** Indicates the battery power consumption generated when phone call is active */ + CONSUMPTION_TYPE_PHONE, + + /** Indicates the battery power consumption generated by radio */ + CONSUMPTION_TYPE_RADIO, + + /** Indicates the battery power consumption generated by screen */ + CONSUMPTION_TYPE_SCREEN, + + /** Indicates the battery power consumption generated by user */ + CONSUMPTION_TYPE_USER, + + /** Indicates the battery power consumption generated by WIFI */ + CONSUMPTION_TYPE_WIFI + } + + /** + * Obtains the power consumption information list. + * + * @return Returns power consumption information list of a device. + * @since 8 + * @systemapi + */ + function getBatteryStats(): Promise>; + function getBatteryStats(callback: AsyncCallback>): void; + + /** + * Obtains power consumption information(Mah) for a given uid. + * + * @param uid Indicates the uid. + * @return Returns power consumption information(Mah). + * @since 8 + * @systemapi + */ + function getAppPowerValue(uid: number): number; + + /** + * Obtains power consumption information(Percent) for a given uid. + * + * @param uid Indicates the uid. + * @return Returns power consumption information(Percent). + * @since 8 + * @systemapi + */ + function getAppPowerPercent(uid: number): number; + + /** + * Obtains power consumption information(Mah) for a given type. + * + * @param ConsumptionType Indicates the hardware type. + * @return Returns power consumption information(Mah). + * @since 8 + * @systemapi + */ + function getHardwareUnitPowerValue(type: ConsumptionType): number; + + /** + * Obtains power consumption information(Percent) for a given type. + * + * @param ConsumptionType Indicates the hardware type. + * @return Returns power consumption information(Percent). + * @since 8 + * @systemapi + */ + function getHardwareUnitPowerPercent(type: ConsumptionType): number; + + /** + * Contains power consumption information of a device. + * + *

Power consumption information includes the uid, type and power consumption value. + * + * @since 8 + * @systemapi + */ + interface BatteryStatsInfo { + /** The uid related with the power consumption info. */ + uid: number; + + /** The type related with the power consumption info. */ + type: ConsumptionType; + + /** The power consumption value(mah). */ + power: number; + } +} +export default batteryStats; \ No newline at end of file -- Gitee From 1a3fb2b51c8477a39b190a7005d7bc3d1fa35289 Mon Sep 17 00:00:00 2001 From: Lu Jiang Date: Tue, 22 Feb 2022 23:45:00 +0800 Subject: [PATCH 2/3] Update interface description Signed-off-by: Lu Jiang --- api/@ohos.batterystatistics.d.ts | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/api/@ohos.batterystatistics.d.ts b/api/@ohos.batterystatistics.d.ts index 9c556972de..2af0b585ed 100755 --- a/api/@ohos.batterystatistics.d.ts +++ b/api/@ohos.batterystatistics.d.ts @@ -18,17 +18,16 @@ import { AsyncCallback } from "./basic"; /** * Provides methods to get power consumption information. * - * @since 8 - * @SysCap SystemCapability.PowerManager.BatteryStatistics + * @syscap SystemCapability.PowerManager.BatteryStatistics * @systemapi - * @import import batteryStats from '@ohos.batterystatistics'; + * @since 8 */ declare namespace batteryStats { /** * Describes the consumption type. * - * @since 8 * @systemapi + * @since 8 */ export enum ConsumptionType { /** Indicates an invalid consumption type */ @@ -63,8 +62,8 @@ declare namespace batteryStats { * Obtains the power consumption information list. * * @return Returns power consumption information list of a device. - * @since 8 * @systemapi + * @since 8 */ function getBatteryStats(): Promise>; function getBatteryStats(callback: AsyncCallback>): void; @@ -74,8 +73,8 @@ declare namespace batteryStats { * * @param uid Indicates the uid. * @return Returns power consumption information(Mah). - * @since 8 * @systemapi + * @since 8 */ function getAppPowerValue(uid: number): number; @@ -84,8 +83,8 @@ declare namespace batteryStats { * * @param uid Indicates the uid. * @return Returns power consumption information(Percent). - * @since 8 * @systemapi + * @since 8 */ function getAppPowerPercent(uid: number): number; @@ -94,8 +93,8 @@ declare namespace batteryStats { * * @param ConsumptionType Indicates the hardware type. * @return Returns power consumption information(Mah). - * @since 8 * @systemapi + * @since 8 */ function getHardwareUnitPowerValue(type: ConsumptionType): number; @@ -104,8 +103,8 @@ declare namespace batteryStats { * * @param ConsumptionType Indicates the hardware type. * @return Returns power consumption information(Percent). - * @since 8 * @systemapi + * @since 8 */ function getHardwareUnitPowerPercent(type: ConsumptionType): number; @@ -114,8 +113,8 @@ declare namespace batteryStats { * *

Power consumption information includes the uid, type and power consumption value. * - * @since 8 * @systemapi + * @since 8 */ interface BatteryStatsInfo { /** The uid related with the power consumption info. */ -- Gitee From bff93103686338d58676fb259150ecc8cefd9efa Mon Sep 17 00:00:00 2001 From: Lu Jiang Date: Wed, 23 Feb 2022 14:29:01 +0800 Subject: [PATCH 3/3] Rename battery statistics interface file Signed-off-by: Lu Jiang --- ...{@ohos.batterystatistics.d.ts => @ohos.batteryStatistics.d.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename api/{@ohos.batterystatistics.d.ts => @ohos.batteryStatistics.d.ts} (100%) diff --git a/api/@ohos.batterystatistics.d.ts b/api/@ohos.batteryStatistics.d.ts similarity index 100% rename from api/@ohos.batterystatistics.d.ts rename to api/@ohos.batteryStatistics.d.ts -- Gitee