• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 热管理
2
3> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
4> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
5
6该模块提供热管理相关的接口,包括热档位查询及注册回调等功能。
7
8
9## 导入模块
10
11```js
12import thermal from '@ohos.thermal';
13```
14
15
16## ThermalLevel
17
18热档位信息。
19
20**系统能力:** 以下各项对应的系统能力均为SystemCapability.PowerManager.ThermalManager
21
22| 名称         | 默认值  | 描述                                       |
23| ---------- | ---- | ---------------------------------------- |
24| COOL       | 0    | 表明设备处于低温的状态,业务执行不受热控的限制。 |
25| NORMAL     | 1    | 表明设备处于正常工作状态,但温度不低,需要注意是否临近发热状态 |
26| WARM       | 2    | 表明设备已经进入温热状态,部分无感知业务需要考虑停止或延迟执行。 |
27| HOT        | 3    | 表明设备已经明显发热,无感知业务应全面停止,其他业务应考虑降规格及负载。 |
28| OVERHEATED | 4    | 表明设备已经发热严重,无感知业务应全面停止,主要业务需降低规格及负载。 |
29| WARNING    | 5    | 表明设备已经发热严重并且即将进入紧急状态,无感知业务应全面停止,主要业务应降低至最低规格。 |
30| EMERGENCY  | 6    | 表明设备已经进入紧急状态,所有业务应当全面停止工作,可保留部分紧急求助功能。 |
31
32
33## thermal.subscribeThermalLevel
34
35subscribeThermalLevel(callback: AsyncCallback<ThermalLevel>): void
36
37订阅热档位变化时的回调提醒。
38
39**系统能力:** SystemCapability.PowerManager.ThermalManager
40
41**参数:**
42
43| 参数名      | 类型                                | 必填   | 说明                                       |
44| -------- | --------------------------------- | ---- | ---------------------------------------- |
45| callback | AsyncCallback&lt;ThermalLevel&gt; | 是    | 指定的callback回调方法,用于获取返回值。<br/>callback返回值:热档位信息。 |
46
47**示例:**
48
49```js
50var lev = 0;
51thermal.subscribeThermalLevel((lev) => {
52    console.info("Thermal level is: " + lev);
53})
54```
55
56## thermal.unsubscribeThermalLevel
57
58unsubscribeThermalLevel(callback?: AsyncCallback\<void>): void
59
60取消订阅热档位变化时的回调提醒。
61
62**系统能力:** SystemCapability.PowerManager.ThermalManager
63
64**参数:**
65
66| 参数名      | 类型                        | 必填   | 说明                    |
67| -------- | ------------------------- | ---- | --------------------- |
68| callback | AsyncCallback&lt;void&gt; | 可选   | 指定的callback回调方法,无返回值。 |
69
70**示例:**
71
72```js
73thermal.unsubscribeThermalLevel(() => {
74    console.info("Unsubscribe completed.");
75});
76```
77
78## thermal.getThermalLevel
79
80getThermalLevel(): ThermalLevel
81
82获取当前热档位信息。
83
84**系统能力:** SystemCapability.PowerManager.ThermalManager
85
86**返回值:**
87
88| 类型           | 说明     |
89| ------------ | ------ |
90| ThermalLevel | 热档位信息。 |
91
92**示例:**
93
94```js
95var lev = thermal.getThermalLevel();
96console.info("Thermal level is: " + lev);
97```
98