1e41f4b71Sopenharmony_ci# @ohos.power (系统电源管理)
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci该模块主要提供重启、关机、查询屏幕状态等接口。
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci> **说明:**
6e41f4b71Sopenharmony_ci>
7e41f4b71Sopenharmony_ci> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8e41f4b71Sopenharmony_ci
9e41f4b71Sopenharmony_ci## 导入模块
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci```js
12e41f4b71Sopenharmony_ciimport {power} from '@kit.BasicServicesKit';
13e41f4b71Sopenharmony_ci```
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ci## power.isActive<sup>9+</sup>
16e41f4b71Sopenharmony_ci
17e41f4b71Sopenharmony_ciisActive(): boolean
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci检测当前设备是否处于活动状态。有屏的设备为亮屏状态,无屏的设备为非休眠状态。
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ci**错误码:**
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[系统电源管理错误码](errorcode-power.md)。
26e41f4b71Sopenharmony_ci
27e41f4b71Sopenharmony_ci| 错误码ID   | 错误信息    |
28e41f4b71Sopenharmony_ci|---------|---------|
29e41f4b71Sopenharmony_ci| 4900101 | Failed to connect to the service. |
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ci**示例:**
32e41f4b71Sopenharmony_ci
33e41f4b71Sopenharmony_ci```js
34e41f4b71Sopenharmony_citry {
35e41f4b71Sopenharmony_ci    let isActive = power.isActive();
36e41f4b71Sopenharmony_ci    console.info('power is active: ' + isActive);
37e41f4b71Sopenharmony_ci} catch(err) {
38e41f4b71Sopenharmony_ci    console.error('check active status failed, err: ' + err);
39e41f4b71Sopenharmony_ci}
40e41f4b71Sopenharmony_ci```
41e41f4b71Sopenharmony_ci
42e41f4b71Sopenharmony_ci## power.rebootDevice<sup>(deprecated)</sup>
43e41f4b71Sopenharmony_ci
44e41f4b71Sopenharmony_cirebootDevice(reason: string): void
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci> **说明:**<br>从API version 7开始支持,从API version 9开始不再维护。替代接口能力仅对系统应用开放。
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ci重启设备。
49e41f4b71Sopenharmony_ci
50e41f4b71Sopenharmony_ci**需要权限:** ohos.permission.REBOOT,该权限仅系统应用可申请。
51e41f4b71Sopenharmony_ci
52e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
53e41f4b71Sopenharmony_ci
54e41f4b71Sopenharmony_ci
55e41f4b71Sopenharmony_ci**参数:**
56e41f4b71Sopenharmony_ci
57e41f4b71Sopenharmony_ci| 参数名    | 类型     | 必填   | 说明    |
58e41f4b71Sopenharmony_ci| ------ | ------ | ---- | ----- |
59e41f4b71Sopenharmony_ci| reason | string | 是    | 重启原因。 |
60e41f4b71Sopenharmony_ci
61e41f4b71Sopenharmony_ci**示例:**
62e41f4b71Sopenharmony_ci
63e41f4b71Sopenharmony_ci```js
64e41f4b71Sopenharmony_cipower.rebootDevice('reboot_test');
65e41f4b71Sopenharmony_ci```
66e41f4b71Sopenharmony_ci
67e41f4b71Sopenharmony_ci## power.getPowerMode<sup>9+</sup>
68e41f4b71Sopenharmony_ci
69e41f4b71Sopenharmony_cigetPowerMode(): DevicePowerMode
70e41f4b71Sopenharmony_ci
71e41f4b71Sopenharmony_ci获取当前设备的电源模式。
72e41f4b71Sopenharmony_ci
73e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
74e41f4b71Sopenharmony_ci
75e41f4b71Sopenharmony_ci**返回值:**
76e41f4b71Sopenharmony_ci
77e41f4b71Sopenharmony_ci| 类型                                 | 说明       |
78e41f4b71Sopenharmony_ci| ------------------------------------ | ---------- |
79e41f4b71Sopenharmony_ci| [DevicePowerMode](#devicepowermode9) | 电源模式。 |
80e41f4b71Sopenharmony_ci
81e41f4b71Sopenharmony_ci**错误码:**
82e41f4b71Sopenharmony_ci
83e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[系统电源管理错误码](errorcode-power.md)。
84e41f4b71Sopenharmony_ci
85e41f4b71Sopenharmony_ci| 错误码ID   | 错误信息    |
86e41f4b71Sopenharmony_ci|---------|---------|
87e41f4b71Sopenharmony_ci| 4900101 | Failed to connect to the service. |
88e41f4b71Sopenharmony_ci
89e41f4b71Sopenharmony_ci**示例:**
90e41f4b71Sopenharmony_ci
91e41f4b71Sopenharmony_ci```js
92e41f4b71Sopenharmony_citry {
93e41f4b71Sopenharmony_ci    let mode = power.getPowerMode();
94e41f4b71Sopenharmony_ci    console.info('power mode: ' + mode);
95e41f4b71Sopenharmony_ci} catch(err) {
96e41f4b71Sopenharmony_ci    console.error('get power mode failed, err: ' + err);
97e41f4b71Sopenharmony_ci}
98e41f4b71Sopenharmony_ci```
99e41f4b71Sopenharmony_ci
100e41f4b71Sopenharmony_ci## power.isStandby<sup>10+</sup>
101e41f4b71Sopenharmony_ci
102e41f4b71Sopenharmony_ciisStandby(): boolean
103e41f4b71Sopenharmony_ci
104e41f4b71Sopenharmony_ci检测当前设备是否进入待机低功耗续航模式。
105e41f4b71Sopenharmony_ci
106e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
107e41f4b71Sopenharmony_ci
108e41f4b71Sopenharmony_ci**返回值:**
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci| 类型                | 说明                                   |
111e41f4b71Sopenharmony_ci| ------------------- | -------------------------------------- |
112e41f4b71Sopenharmony_ci| boolean | 进入待机模式返回true,否则返回false。 |
113e41f4b71Sopenharmony_ci
114e41f4b71Sopenharmony_ci**错误码:**
115e41f4b71Sopenharmony_ci
116e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[系统电源管理错误码](errorcode-power.md)。
117e41f4b71Sopenharmony_ci
118e41f4b71Sopenharmony_ci| 错误码ID   | 错误信息    |
119e41f4b71Sopenharmony_ci|---------|---------|
120e41f4b71Sopenharmony_ci| 4900101 | Failed to connect to the service. |
121e41f4b71Sopenharmony_ci
122e41f4b71Sopenharmony_ci**示例:**
123e41f4b71Sopenharmony_ci
124e41f4b71Sopenharmony_ci```js
125e41f4b71Sopenharmony_citry {
126e41f4b71Sopenharmony_ci    let isStandby = power.isStandby();
127e41f4b71Sopenharmony_ci    console.info('device is in standby: ' + isStandby);
128e41f4b71Sopenharmony_ci} catch(err) {
129e41f4b71Sopenharmony_ci    console.error('check isStandby failed, err: ' + err);
130e41f4b71Sopenharmony_ci}
131e41f4b71Sopenharmony_ci```
132e41f4b71Sopenharmony_ci
133e41f4b71Sopenharmony_ci## power.isScreenOn<sup>(deprecated)</sup>
134e41f4b71Sopenharmony_ci
135e41f4b71Sopenharmony_ciisScreenOn(callback: AsyncCallback&lt;boolean&gt;): void
136e41f4b71Sopenharmony_ci
137e41f4b71Sopenharmony_ci> **说明:**<br>从API version 9开始不再维护,建议使用[power.isActive](#powerisactive9)替代。
138e41f4b71Sopenharmony_ci
139e41f4b71Sopenharmony_ci检测当前设备的亮灭屏状态。使用callback异步回调。
140e41f4b71Sopenharmony_ci
141e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
142e41f4b71Sopenharmony_ci
143e41f4b71Sopenharmony_ci**参数:**
144e41f4b71Sopenharmony_ci
145e41f4b71Sopenharmony_ci| 参数名   | 类型                         | 必填 | 说明                                                         |
146e41f4b71Sopenharmony_ci| -------- | ---------------------------- | ---- | ------------------------------------------------------------ |
147e41f4b71Sopenharmony_ci| callback | AsyncCallback&lt;boolean&gt; | 是   | 回调函数。当检测成功,err为undefined,data为获取到的亮灭屏状态,返回true表示亮屏,返回false表示灭屏;否则为错误对象。 |
148e41f4b71Sopenharmony_ci
149e41f4b71Sopenharmony_ci**示例:**
150e41f4b71Sopenharmony_ci
151e41f4b71Sopenharmony_ci```js
152e41f4b71Sopenharmony_cipower.isScreenOn((err: Error, data: boolean) => {
153e41f4b71Sopenharmony_ci    if (typeof err === 'undefined') {
154e41f4b71Sopenharmony_ci        console.info('screen on status is ' + data);
155e41f4b71Sopenharmony_ci    } else {
156e41f4b71Sopenharmony_ci        console.error('check screen status failed, err: ' + err);
157e41f4b71Sopenharmony_ci    }
158e41f4b71Sopenharmony_ci})
159e41f4b71Sopenharmony_ci```
160e41f4b71Sopenharmony_ci
161e41f4b71Sopenharmony_ci## power.isScreenOn<sup>(deprecated)</sup>
162e41f4b71Sopenharmony_ci
163e41f4b71Sopenharmony_ciisScreenOn(): Promise&lt;boolean&gt;
164e41f4b71Sopenharmony_ci
165e41f4b71Sopenharmony_ci> **说明:**<br>从API version 9开始不再维护,建议使用[power.isActive](#powerisactive9)替代。
166e41f4b71Sopenharmony_ci
167e41f4b71Sopenharmony_ci检测当前设备的亮灭屏状态。使用Promise异步回调。
168e41f4b71Sopenharmony_ci
169e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
170e41f4b71Sopenharmony_ci
171e41f4b71Sopenharmony_ci**返回值:**
172e41f4b71Sopenharmony_ci| 类型                   | 说明                                               |
173e41f4b71Sopenharmony_ci| ---------------------- | -------------------------------------------------- |
174e41f4b71Sopenharmony_ci| Promise&lt;boolean&gt; | Promise对象。返回true表示亮屏;返回false表示灭屏。 |
175e41f4b71Sopenharmony_ci
176e41f4b71Sopenharmony_ci**示例:**
177e41f4b71Sopenharmony_ci
178e41f4b71Sopenharmony_ci```js
179e41f4b71Sopenharmony_cipower.isScreenOn()
180e41f4b71Sopenharmony_ci.then((data: boolean) => {
181e41f4b71Sopenharmony_ci    console.info('screen on status is ' + data);
182e41f4b71Sopenharmony_ci})
183e41f4b71Sopenharmony_ci.catch((err: Error) => {
184e41f4b71Sopenharmony_ci    console.error('check screen status failed, err: ' + err);
185e41f4b71Sopenharmony_ci})
186e41f4b71Sopenharmony_ci```
187e41f4b71Sopenharmony_ci
188e41f4b71Sopenharmony_ci## DevicePowerMode<sup>9+</sup>
189e41f4b71Sopenharmony_ci
190e41f4b71Sopenharmony_ci表示电源模式的枚举值。
191e41f4b71Sopenharmony_ci
192e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.PowerManager.PowerManager.Core
193e41f4b71Sopenharmony_ci
194e41f4b71Sopenharmony_ci| 名称                    | 值   | 说明                   |
195e41f4b71Sopenharmony_ci| ----------------------- | ---- | ---------------------- |
196e41f4b71Sopenharmony_ci| MODE_NORMAL             | 600  | 表示标准模式,默认值。 |
197e41f4b71Sopenharmony_ci| MODE_POWER_SAVE         | 601  | 表示省电模式。         |
198e41f4b71Sopenharmony_ci| MODE_PERFORMANCE        | 602  | 表示性能模式。         |
199e41f4b71Sopenharmony_ci| MODE_EXTREME_POWER_SAVE | 603  | 表示超级省电模式。     |
200