harmony 鸿蒙@ohos.power (系统电源管理)

  • 2022-08-09
  • 浏览 (734)

@ohos.power (系统电源管理)

该模块主要提供重启、关机、查询屏幕状态等接口。

说明:

本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import power from '@ohos.power';

power.shutdown

shutdown(reason: string): void

系统关机。

系统接口: 此接口为系统接口。

需要权限: ohos.permission.REBOOT

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
reason string 关机原因。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    power.shutdown('shutdown_test');
} catch(err) {
    console.error('shutdown failed, err: ' + err);
}

power.reboot9+

reboot(reason: string): void

重启设备。

系统接口: 此接口为系统接口。

需要权限: ohos.permission.REBOOT

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
reason string 重启原因。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    power.reboot('reboot_test');
} catch(err) {
    console.error('reboot failed, err: ' + err);
}

power.isActive9+

isActive(): boolean

检测当前设备是否处于活动状态。有屏的设备为亮屏状态,无屏的设备为非休眠状态。

系统能力: SystemCapability.PowerManager.PowerManager.Core

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    let isActive = power.isActive();
    console.info('power is active: ' + isActive);
} catch(err) {
    console.error('check active status failed, err: ' + err);
}

power.wakeup9+

wakeup(detail: string): void

唤醒设备。

系统接口: 此接口为系统接口。

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
detail string 唤醒原因。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    power.wakeup('wakeup_test');
} catch(err) {
    console.error('wakeup failed, err: ' + err);
}

power.suspend9+

suspend(isImmediate?: boolean): void

休眠设备。

系统接口: 此接口为系统接口。

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
isImmediate10+ boolean 是否直接休眠设备。不填该参数则默认为false由系统自动检测何时进入休眠。
说明: 从API version 10开始,支持该参数。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    power.suspend();
} catch(err) {
    console.error('suspend failed, err: ' + err);
}

power.getPowerMode9+

getPowerMode(): DevicePowerMode

获取当前设备的电源模式。

系统能力: SystemCapability.PowerManager.PowerManager.Core

返回值:

类型 说明
DevicePowerMode 电源模式。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    let mode = power.getPowerMode();
    console.info('power mode: ' + mode);
} catch(err) {
    console.error('get power mode failed, err: ' + err);
}

power.setPowerMode9+

setPowerMode(mode: DevicePowerMode, callback: AsyncCallback<void>): void

设置当前设备的电源模式。使用callback异步回调。

系统接口: 此接口为系统接口。

需要权限: ohos.permission.POWER_OPTIMIZATION

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
mode DevicePowerMode 电源模式。
callback AsyncCallback<void> 回调函数。当设置电源模式成功,err为undefined,否则为错误对象。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

power.setPowerMode(power.DevicePowerMode.MODE_PERFORMANCE, (err: Error) => {
    if (typeof err === 'undefined') {
        console.info('set power mode to MODE_PERFORMANCE');
    } else {
        console.error('set power mode failed, err: ' + err);
    }
});

power.setPowerMode9+

setPowerMode(mode: DevicePowerMode): Promise<void>

设置当前设备的电源模式。使用Promise异步回调。

系统接口: 此接口为系统接口。

需要权限: ohos.permission.POWER_OPTIMIZATION

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
mode DevicePowerMode 电源模式。

返回值:

类型 说明
Promise<void> Promise对象。无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

power.setPowerMode(power.DevicePowerMode.MODE_PERFORMANCE)
.then(() => {
    console.info('set power mode to MODE_PERFORMANCE');
})
.catch((err : Error)=> {
    console.error('set power mode failed, err: ' + err);
});

power.isStandby10+

isStandby(): boolean

检测当前设备是否进入待机低功耗续航模式。

系统能力: SystemCapability.PowerManager.PowerManager.Core

返回值:

类型 说明
boolean 进入待机模式返回true,否则返回false。

错误码:

以下错误码的详细介绍请参见系统电源管理错误码

错误码ID 错误信息
4900101 If connecting to the service failed.

示例:

try {
    let isStandby = power.isStandby();
    console.info('device is in standby: ' + isStandby);
} catch(err) {
    console.error('check isStandby failed, err: ' + err);
}

power.rebootDevice(deprecated)

rebootDevice(reason: string): void

说明:
从API version 7开始支持,从API version 9开始不再维护。建议使用power.reboot替代,替代接口能力仅对系统应用开放。

重启设备。

需要权限: ohos.permission.REBOOT

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
reason string 重启原因。

示例:

power.rebootDevice('reboot_test');

power.isScreenOn(deprecated)

isScreenOn(callback: AsyncCallback<boolean>): void

说明:
从API version 9开始不再维护,建议使用power.isActive替代。

检测当前设备的亮灭屏状态。使用callback异步回调。

系统能力: SystemCapability.PowerManager.PowerManager.Core

参数:

参数名 类型 必填 说明
callback AsyncCallback<boolean> 回调函数。当检测成功,err为undefined,data为获取到的亮灭屏状态,返回true表示亮屏,返回false表示灭屏;否则为错误对象。

示例:

power.isScreenOn((err: Error, data: boolean) => {
    if (typeof err === 'undefined') {
        console.info('screen on status is ' + data);
    } else {
        console.error('check screen status failed, err: ' + err);
    }
})

power.isScreenOn(deprecated)

isScreenOn(): Promise<boolean>

说明:
从API version 9开始不再维护,建议使用power.isActive替代。

检测当前设备的亮灭屏状态。使用Promise异步回调。

系统能力: SystemCapability.PowerManager.PowerManager.Core

返回值: |类型 |说明 | |———————-|————————————————–| |Promise<boolean>|Promise对象。返回true表示亮屏;返回false表示灭屏。|

示例:

power.isScreenOn()
.then((data: boolean) => {
    console.info('screen on status is ' + data);
})
.catch((err: { code: number, message: string }) => {
    console.error('check screen status failed, err: ' + err);
})

DevicePowerMode9+

表示电源模式的枚举值。

系统能力: SystemCapability.PowerManager.PowerManager.Core

名称 说明
MODE_NORMAL 600 表示标准模式,默认值。
MODE_POWER_SAVE 601 表示省电模式。
MODE_PERFORMANCE 602 表示性能模式。
MODE_EXTREME_POWER_SAVE 603 表示超级省电模式。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙接口

harmony 鸿蒙系统公共事件定义(待停用)

harmony 鸿蒙系统公共事件定义

harmony 鸿蒙开发说明

harmony 鸿蒙企业设备管理概述(仅对系统应用开放)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager模块)

harmony 鸿蒙@ohos.distributedBundle (分布式包管理)

harmony 鸿蒙@ohos.bundle (Bundle模块)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (企业设备管理扩展能力)

0  赞