热管理

2024-01-23 17:47 更新

该模块提供热管理相关的接口,包括热档位查询及注册回调等功能。

说明

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

导入模块

  1. import thermal from '@ohos.thermal';

thermal.registerThermalLevelCallback9+

registerThermalLevelCallback(callback: Callback<ThermalLevel>): void

订阅热档位变化时的回调提醒。

系统能力: SystemCapability.PowerManager.ThermalManager

参数:

参数名

类型

必填

说明

callback

Callback<ThermalLevel>

回调函数,返回变化后的热档位。

错误码:

以下错误码的详细介绍请参见耗电统计错误码

错误码ID

错误信息

4800101

连接服务失败。

示例:

  1. try {
  2. thermal.registerThermalLevelCallback(level => {
  3. console.info('thermal level is: ' + level);
  4. });
  5. console.info('register thermal level callback success.');
  6. } catch(err) {
  7. console.error('register thermal level callback failed, err: ' + err);
  8. }

thermal.unregisterThermalLevelCallback9+

unregisterThermalLevelCallback(callback?: Callback<void>): void

取消订阅热档位变化时的回调提醒。

系统能力: SystemCapability.PowerManager.ThermalManager

参数:

参数名

类型

必填

说明

callback

Callback<void>

回调函数,无返回值。不填该参数则取消所有回调。

错误码:

以下错误码的详细介绍请参见热管理错误码

错误码ID

错误信息

4800101

连接服务失败。

示例:

  1. try {
  2. thermal.unregisterThermalLevelCallback(() => {
  3. console.info('unsubscribe thermal level success.');
  4. });
  5. console.info('unregister thermal level callback success.');
  6. } catch(err) {
  7. console.error('unregister thermal level callback failed, err: ' + err);
  8. }

thermal.getLevel9+

getLevel(): ThermalLevel

获取当前热档位信息。

系统能力: SystemCapability.PowerManager.ThermalManager

返回值:

类型

说明

ThermalLevel

热档位信息。

错误码:

以下错误码的详细介绍请参见热管理错误码

错误码ID

错误信息

4800101

连接服务失败。

示例:

  1. try {
  2. var level = thermal.getLevel();
  3. console.info('thermal level is: ' + level);
  4. } catch(err) {
  5. console.error('get thermal level failed, err: ' + err);
  6. }

thermal.subscribeThermalLevel(deprecated)

subscribeThermalLevel(callback: AsyncCallback<ThermalLevel>): void

说明

从API version 9开始不再维护,建议使用thermal.registerThermalLevelCallback替代。

订阅热档位变化时的回调提醒。

系统能力: SystemCapability.PowerManager.ThermalManager

参数:

参数名

类型

必填

说明

callback

AsyncCallback<ThermalLevel>

回调函数。AsyncCallback只返回一个参数。

示例:

  1. thermal.subscribeThermalLevel((level) => {
  2. console.info('thermal level is: ' + level);
  3. });

thermal.unsubscribeThermalLevel(deprecated)

unsubscribeThermalLevel(callback?: AsyncCallback<void>): void

说明

从API version 9开始不再维护,建议使用thermal.unregisterThermalLevelCallback替代。

取消订阅热档位变化时的回调提醒。

系统能力: SystemCapability.PowerManager.ThermalManager

参数:

参数名

类型

必填

说明

callback

AsyncCallback<void>

回调函数,无返回值。不填该参数则取消所有回调。

示例:

  1. thermal.unsubscribeThermalLevel(() => {
  2. console.info('unsubscribe thermal level success.');
  3. });

thermal.getThermalLevel(deprecated)

getThermalLevel(): ThermalLevel

说明

从API version 9开始不再维护,建议使用thermal.getLevel替代。

获取当前热档位信息。

系统能力: SystemCapability.PowerManager.ThermalManager

返回值:

类型

说明

ThermalLevel

热档位信息。

示例:

  1. var level = thermal.getThermalLevel();
  2. console.info('thermal level is: ' + level);

ThermalLevel

热档位信息。

系统能力: SystemCapability.PowerManager.ThermalManager

名称

说明

COOL

0

表明设备处于低温的状态,业务执行不受热控的限制。

NORMAL

1

表明设备处于正常工作状态,但温度不低,需要注意是否临近发热状态

WARM

2

表明设备已经进入温热状态,部分无感知业务需要考虑停止或延迟执行。

HOT

3

表明设备已经明显发热,无感知业务应全面停止,其他业务应考虑降规格及负载。

OVERHEATED

4

表明设备已经发热严重,无感知业务应全面停止,主要业务需降低规格及负载。

WARNING

5

表明设备已经发热严重并且即将进入紧急状态,无感知业务应全面停止,主要业务应降低至最低规格。

EMERGENCY

6

表明设备已经进入紧急状态,所有业务应当全面停止工作,可保留部分紧急求助功能。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号