1# @ohos.enterprise.deviceSettings (设备设置管理)(系统接口) 2<!--Kit: MDM Kit--> 3<!--Subsystem: Customization--> 4<!--Owner: @huanleima--> 5<!--Designer: @liuzuming--> 6<!--Tester: @lpw_work--> 7<!--Adviser: @Brilliantry_Rui--> 8 9本模块提供企业设备设置能力,包括获取设备息屏时间等。 10 11> **说明:** 12> 13> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 14> 15> 本模块接口仅可在Stage模型下使用。 16> 17> 本模块接口仅对[设备管理应用](../../mdm/mdm-kit-term.md#mdm应用设备管理应用)开放,需将[设备管理应用激活](js-apis-enterprise-adminManager-sys.md#adminmanagerenableadmin-2)后调用。 18> 19> 当前页面仅包含本模块的系统接口,其他公开接口参见[@ohos.enterprise.deviceSettings](js-apis-enterprise-deviceSettings.md)。 20 21## 导入模块 22 23```ts 24import { deviceSettings } from '@kit.MDMKit'; 25``` 26 27## deviceSettings.setScreenOffTime<sup>11+</sup> 28 29setScreenOffTime(admin: Want, time: number): void 30 31设置设备息屏时间。 32 33**需要权限:** ohos.permission.ENTERPRISE_SET_SCREENOFF_TIME 34 35**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 36 37**模型约束:** 此接口仅可在Stage模型下使用。 38 39**系统接口:** 此接口为系统接口。 40 41**参数:** 42 43| 参数名 | 类型 | 必填 | 说明 | 44| -------- | ---------------------------------------- | ---- | ------------------------------- | 45| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 46| time | number | 是 | 设备息屏时间(单位:毫秒,建议参数与设备可选息屏时间保持一致)。 | 47 48**错误码**: 49 50以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 51 52| 错误码ID | 错误信息 | 53| ------- | ---------------------------------------------------------------------------- | 54| 9200001 | The application is not an administrator application of the device. | 55| 9200002 | The administrator application does not have permission to manage the device. | 56| 201 | Permission verification failed. The application does not have the permission required to call the API. | 57| 202 | Permission verification failed. A non-system application calls a system API. | 58| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 59 60**示例:** 61 62```ts 63import { deviceSettings } from '@kit.MDMKit'; 64import { Want } from '@kit.AbilityKit'; 65 66let wantTemp: Want = { 67 // 需根据实际情况进行替换 68 bundleName: 'com.example.myapplication', 69 abilityName: 'EntryAbility' 70}; 71try { 72 // 参数需根据实际情况进行替换 73 deviceSettings.setScreenOffTime(wantTemp, 30000); 74 console.info(`Succeeded in setting screen off time`); 75} catch(err) { 76 console.error(`Failed to set screen off time. Code: ${err.code}, message: ${err.message}`); 77} 78``` 79 80## deviceSettings.getScreenOffTime 81 82getScreenOffTime(admin: Want, callback: AsyncCallback<number>): void 83 84获取设备息屏时间,使用callback异步回调。 85 86**需要权限:** ohos.permission.ENTERPRISE_GET_SETTINGS 87 88**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 89 90**模型约束:** 此接口仅可在Stage模型下使用。 91 92**系统接口:** 此接口为系统接口。 93 94**参数:** 95 96| 参数名 | 类型 | 必填 | 说明 | 97| -------- | ---------------------------------------- | ---- | ------------------------------- | 98| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 99| callback | AsyncCallback<number> | 是 | 回调函数。当接口调用成功,err为null,data为设备息屏时间(单位:毫秒),否则err为错误对象。 | 100 101**错误码**: 102 103以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 104 105| 错误码ID | 错误信息 | 106| ------- | ---------------------------------------------------------------------------- | 107| 9200001 | The application is not an administrator application of the device. | 108| 9200002 | The administrator application does not have permission to manage the device. | 109| 201 | Permission verification failed. The application does not have the permission required to call the API. | 110| 202 | Permission verification failed. A non-system application calls a system API. | 111| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 112 113**示例:** 114 115```ts 116import { deviceSettings } from '@kit.MDMKit'; 117import { Want } from '@kit.AbilityKit'; 118 119let wantTemp: Want = { 120 // 需根据实际情况进行替换 121 bundleName: 'com.example.myapplication', 122 abilityName: 'EntryAbility' 123}; 124 125deviceSettings.getScreenOffTime(wantTemp, (err, result) => { 126 if (err) { 127 console.error(`Failed to get screen off time. Code: ${err.code}, message: ${err.message}`); 128 return; 129 } 130 console.info(`Succeeded in getting screen off time, result : ${result}`); 131}); 132``` 133 134## deviceSettings.getScreenOffTime 135 136getScreenOffTime(admin: Want): Promise<number> 137 138获取设备息屏时间,使用Promise异步回调。 139 140**需要权限:** ohos.permission.ENTERPRISE_GET_SETTINGS 141 142**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 143 144**模型约束:** 此接口仅可在Stage模型下使用。 145 146**系统接口:** 此接口为系统接口。 147 148**参数:** 149 150| 参数名 | 类型 | 必填 | 说明 | 151| ------ | ------------------------------------------------------- | ---- | ---------------------- | 152| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 153 154**返回值:** 155 156| 类型 | 说明 | 157| --------------------- | ------------------------- | 158| Promise<number> | Promise对象,返回设备息屏时间(单位:毫秒)。 | 159 160**错误码**: 161 162以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 163 164| 错误码ID | 错误信息 | 165| ------- | ---------------------------------------------------------------------------- | 166| 9200001 | The application is not an administrator application of the device. | 167| 9200002 | The administrator application does not have permission to manage the device. | 168| 201 | Permission verification failed. The application does not have the permission required to call the API. | 169| 202 | Permission verification failed. A non-system application calls a system API. | 170| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 171 172**示例:** 173 174```ts 175import { deviceSettings } from '@kit.MDMKit'; 176import { Want } from '@kit.AbilityKit'; 177import { BusinessError } from '@kit.BasicServicesKit'; 178 179let wantTemp: Want = { 180 // 需根据实际情况进行替换 181 bundleName: 'com.example.myapplication', 182 abilityName: 'EntryAbility' 183}; 184 185deviceSettings.getScreenOffTime(wantTemp).then((result) => { 186 console.info(`Succeeded in getting screen off time, result : ${result}`); 187}).catch((err: BusinessError) => { 188 console.error(`Failed to get screen off time. Code: ${err.code}, message: ${err.message}`); 189}); 190``` 191 192## deviceSettings.installUserCertificate 193 194installUserCertificate(admin: Want, certificate: CertBlob, callback: AsyncCallback<string>): void 195 196安装用户证书,使用callback异步回调。 197 198**需要权限:** ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE 199 200**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 201 202**模型约束:** 此接口仅可在Stage模型下使用。 203 204**系统接口:** 此接口为系统接口。 205 206**参数:** 207 208| 参数名 | 类型 | 必填 | 说明 | 209| -------- | ---------------------------------------- | ---- | ------------------------------- | 210| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 211| certificate | [CertBlob](#certblob) | 是 | 证书信息。证书文件应放在应用沙箱路径等应用有权限访问的路径下。 | 212| callback | AsyncCallback<string> | 是 | 回调函数,当接口调用成功,err为null,否则为错误对象。 | 213 214**错误码**: 215 216以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 217 218| 错误码ID | 错误信息 | 219| ------- | ---------------------------------------------------------------------------- | 220| 9200001 | The application is not an administrator application of the device. | 221| 9200002 | The administrator application does not have permission to manage the device. | 222| 9201001 | Failed to manage the certificate. | 223| 201 | Permission verification failed. The application does not have the permission required to call the API. | 224| 202 | Permission verification failed. A non-system application calls a system API. | 225| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 226 227**示例:** 228 229<!--code_no_check--> 230```ts 231import { deviceSettings } from '@kit.MDMKit'; 232import { common, Want } from '@kit.AbilityKit'; 233import { BusinessError } from '@kit.BasicServicesKit'; 234 235let wantTemp: Want = { 236 // 需根据实际情况进行替换 237 bundleName: 'com.example.myapplication', 238 abilityName: 'EntryAbility' 239}; 240let certFileArray: Uint8Array = new Uint8Array(); 241// 变量context需要在MainAbility的onCreate回调函数中进行初始化 242// test.cer需要放置在rawfile目录下 243// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext 244const context = this.getUIContext().getHostContext() as common.UIAbilityContext; 245context.resourceManager.getRawFileContent("test.cer").then((value) => { 246 certFileArray = value; 247 deviceSettings.installUserCertificate(wantTemp, { inData: certFileArray, alias: "cert_alias_xts" }, (err, result) => { 248 if (err) { 249 console.error(`Failed to install user certificate. Code: ${err.code}, message: ${err.message}`); 250 } else { 251 console.info(`Succeeded in installing user certificate, result : ${JSON.stringify(result)}`); 252 } 253 }); 254}).catch((error: BusinessError) => { 255 console.error(`Failed to get row file content. message: ${error.message}`); 256 return; 257}); 258``` 259 260## deviceSettings.installUserCertificate 261 262installUserCertificate(admin: Want, certificate: CertBlob): Promise<string> 263 264安装用户证书,使用Promise异步回调。 265 266**需要权限:** ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE 267 268**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 269 270**模型约束:** 此接口仅可在Stage模型下使用。 271 272**系统接口:** 此接口为系统接口。 273 274**参数:** 275 276| 参数名 | 类型 | 必填 | 说明 | 277| ----- | ----------------------------------- | ---- | ------- | 278| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 279| certificate | [CertBlob](#certblob) | 是 | 证书信息。证书文件应放在应用沙箱路径等应用有权限访问的路径下。 | 280 281**返回值:** 282 283| 类型 | 说明 | 284| --------------------- | ------------------------- | 285| Promise<string> | Promise对象,返回当前证书安装后的uri,用于卸载证书。 | 286 287**错误码**: 288 289以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 290 291| 错误码ID | 错误信息 | 292| ------- | ---------------------------------------------------------------------------- | 293| 9200001 | The application is not an administrator application of the device. | 294| 9200002 | The administrator application does not have permission to manage the device. | 295| 9201001 | Failed to manage the certificate. | 296| 201 | Permission verification failed. The application does not have the permission required to call the API. | 297| 202 | Permission verification failed. A non-system application calls a system API. | 298| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 299 300**示例:** 301 302<!--code_no_check--> 303```ts 304import { deviceSettings } from '@kit.MDMKit'; 305import { common, Want } from '@kit.AbilityKit'; 306import { BusinessError } from '@kit.BasicServicesKit'; 307 308let wantTemp: Want = { 309 // 需根据实际情况进行替换 310 bundleName: 'com.example.myapplication', 311 abilityName: 'EntryAbility' 312}; 313let certFileArray: Uint8Array = new Uint8Array(); 314// 变量context需要在MainAbility的onCreate回调函数中进行初始化 315// test.cer需要放置在rawfile目录下 316// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext 317const context = this.getUIContext().getHostContext() as common.UIAbilityContext; 318context.resourceManager.getRawFileContent("test.cer").then((value) => { 319 certFileArray = value 320 deviceSettings.installUserCertificate(wantTemp, { inData: certFileArray, alias: "cert_alias_xts" }) 321 .then((result) => { 322 console.info(`Succeeded in installing user certificate, result : ${JSON.stringify(result)}`); 323 }).catch((err: BusinessError) => { 324 console.error(`Failed to install user certificate. Code: ${err.code}, message: ${err.message}`); 325 }) 326}).catch((error: BusinessError) => { 327 console.error(`Failed to get row file content. message: ${error.message}`); 328 return; 329}); 330``` 331 332## CertBlob 333 334证书信息。 335 336**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 337 338| 名称 | 类型 | 只读 | 可选 | 说明 | 339| ----------- | --------| ----- | ---- | ------------------------------- | 340| inData | Uint8Array | 否 | 否 |证书的二进制内容。 | 341| alias | string | 否 | 否 |证书别名。 | 342 343## deviceSettings.uninstallUserCertificate 344 345uninstallUserCertificate(admin: Want, certUri: string, callback: AsyncCallback<void>): void 346 347卸载用户证书,使用callback异步回调。 348 349**需要权限:** ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE 350 351**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 352 353**模型约束:** 此接口仅可在Stage模型下使用。 354 355**系统接口:** 此接口为系统接口。 356 357**参数:** 358 359| 参数名 | 类型 | 必填 | 说明 | 360| -------- | ---------------------------------------- | ---- | ------------------------------- | 361| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 362| certUri | string | 是 | 证书uri,由安装用户证书接口[installUserCertificate](#devicesettingsinstallusercertificate)设置返回。 | 363| callback | AsyncCallback<void> | 是 | 回调函数,当接口调用成功,err为null,否则为错误对象。 | 364 365**错误码**: 366 367以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 368 369| 错误码ID | 错误信息 | 370| ------- | ---------------------------------------------------------------------------- | 371| 9200001 | The application is not an administrator application of the device. | 372| 9200002 | The administrator application does not have permission to manage the device. | 373| 9201001 | Failed to manage the certificate. | 374| 201 | Permission verification failed. The application does not have the permission required to call the API. | 375| 202 | Permission verification failed. A non-system application calls a system API. | 376| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 377 378**示例:** 379 380```ts 381import { deviceSettings } from '@kit.MDMKit'; 382import { Want } from '@kit.AbilityKit'; 383 384let wantTemp: Want = { 385 // 需根据实际情况进行替换 386 bundleName: 'com.example.myapplication', 387 abilityName: 'EntryAbility' 388}; 389// 需根据实际情况进行替换 390let aliasStr = "certName"; 391deviceSettings.uninstallUserCertificate(wantTemp, aliasStr, (err) => { 392 if (err) { 393 console.error(`Failed to uninstall user certificate. Code: ${err.code}, message: ${err.message}`); 394 return; 395 } 396 console.info(`Succeeded in uninstalling user certificate`); 397}); 398``` 399 400## deviceSettings.uninstallUserCertificate 401 402uninstallUserCertificate(admin: Want, certUri: string): Promise<void> 403 404卸载用户证书,使用Promise异步回调。 405 406**需要权限:** ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE 407 408**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 409 410**模型约束:** 此接口仅可在Stage模型下使用。 411 412**系统接口:** 此接口为系统接口。 413 414**参数:** 415 416| 参数名 | 类型 | 必填 | 说明 | 417| ----- | ----------------------------------- | ---- | ------- | 418| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 419| certUri | string | 是 | 证书uri,由安装用户证书接口[installUserCertificate](#devicesettingsinstallusercertificate-1)设置返回。 | 420 421**返回值:** 422 423| 类型 | 说明 | 424| --------------------- | ------------------------- | 425| Promise<void> | 无返回结果的Promise对象。当卸载用户证书失败时会抛出错误对象。 | 426 427**错误码**: 428 429以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 430 431| 错误码ID | 错误信息 | 432| ------- | ---------------------------------------------------------------------------- | 433| 9200001 | The application is not an administrator application of the device. | 434| 9200002 | The administrator application does not have permission to manage the device. | 435| 9201001 | Failed to manage the certificate. | 436| 201 | Permission verification failed. The application does not have the permission required to call the API. | 437| 202 | Permission verification failed. A non-system application calls a system API. | 438| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 439 440**示例:** 441 442```ts 443import { deviceSettings } from '@kit.MDMKit'; 444import { Want } from '@kit.AbilityKit'; 445import { BusinessError } from '@kit.BasicServicesKit'; 446 447let wantTemp: Want = { 448 // 需根据实际情况进行替换 449 bundleName: 'com.example.myapplication', 450 abilityName: 'EntryAbility' 451}; 452// 需根据实际情况进行替换 453let aliasStr = "certName" 454deviceSettings.uninstallUserCertificate(wantTemp, aliasStr).then(() => { 455 console.info(`Succeeded in uninstalling user certificate`); 456}).catch((err: BusinessError) => { 457 console.error(`Failed to uninstall user certificate. Code is ${err.code}, message is ${err.message}`); 458}); 459``` 460 461## deviceSettings.setPowerPolicy<sup>11+</sup> 462 463setPowerPolicy(admin: Want, powerScene: PowerScene, powerPolicy: PowerPolicy): void 464 465设置电源策略。 466 467**需要权限:** ohos.permission.ENTERPRISE_MANAGE_SETTINGS 468 469**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 470 471**模型约束:** 此接口仅可在Stage模型下使用。 472 473**系统接口:** 此接口为系统接口。 474 475**参数:** 476 477| 参数名 | 类型 | 必填 | 说明 | 478| -------- | ---------------------------------------- | ---- | ------------------------------- | 479| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 480| powerScene | [PowerScene](#powerscene11) | 是 | 电源策略场景,当前只支持超时场景。 | 481| powerPolicy | [PowerPolicy](#powerpolicy11) | 是 | 电源策略。 | 482 483**错误码**: 484 485以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 486 487| 错误码ID | 错误信息 | 488| ------- | ---------------------------------------------------------------------------- | 489| 9200001 | The application is not an administrator application of the device. | 490| 9200002 | The administrator application does not have permission to manage the device. | 491| 201 | Permission verification failed. The application does not have the permission required to call the API. | 492| 202 | Permission verification failed. A non-system application calls a system API. | 493| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 494 495**示例:** 496 497```ts 498import { deviceSettings } from '@kit.MDMKit'; 499import { Want } from '@kit.AbilityKit'; 500 501let wantTemp: Want = { 502 // 需根据实际情况进行替换 503 bundleName: 'com.example.myapplication', 504 abilityName: 'EntryAbility' 505}; 506try { 507 let delayTime = 0; 508 let powerScene: deviceSettings.PowerScene = deviceSettings.PowerScene.TIME_OUT; 509 let powerPolicyAction: deviceSettings.PowerPolicyAction = deviceSettings.PowerPolicyAction.AUTO_SUSPEND; 510 let powerPolicy: deviceSettings.PowerPolicy = {powerPolicyAction, delayTime}; 511 deviceSettings.setPowerPolicy(wantTemp, powerScene, powerPolicy); 512 console.info(`Succeeded in setting power polilcy`); 513} catch (err) { 514 console.error(`Failed to set power policy. Code: ${err.code}, message: ${err.message}`); 515} 516``` 517 518## deviceSettings.getPowerPolicy<sup>11+</sup> 519 520getPowerPolicy(admin: Want, powerScene: PowerScene): PowerPolicy 521 522获取电源策略。 523 524**需要权限:** ohos.permission.ENTERPRISE_MANAGE_SETTINGS 525 526**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 527 528**模型约束:** 此接口仅可在Stage模型下使用。 529 530**系统接口:** 此接口为系统接口。 531 532**参数:** 533 534| 参数名 | 类型 | 必填 | 说明 | 535| -------- | ---------------------------------------- | ---- | ------------------------------- | 536| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 企业设备管理扩展组件。 | 537| powerScene | [PowerScene](#powerscene11) | 是 | 电源策略场景,当前只支持超时场景。 | 538 539**返回值:** 540 541| 类型 | 说明 | 542| ----- | --------------------------------- | 543| [PowerPolicy](#powerpolicy11) | 电源策略。 | 544 545**错误码**: 546 547以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 548 549| 错误码ID | 错误信息 | 550| ------- | ---------------------------------------------------------------------------- | 551| 9200001 | The application is not an administrator application of the device. | 552| 9200002 | The administrator application does not have permission to manage the device. | 553| 201 | Permission verification failed. The application does not have the permission required to call the API. | 554| 202 | Permission verification failed. A non-system application calls a system API. | 555| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 556 557**示例:** 558 559```ts 560import { deviceSettings } from '@kit.MDMKit'; 561import { Want } from '@kit.AbilityKit'; 562 563let wantTemp: Want = { 564 // 需根据实际情况进行替换 565 bundleName: 'com.example.myapplication', 566 abilityName: 'EntryAbility' 567}; 568try { 569 let powerScene: deviceSettings.PowerScene = deviceSettings.PowerScene.TIME_OUT; 570 let powerPolicy: deviceSettings.PowerPolicy = deviceSettings.getPowerPolicy(wantTemp, powerScene); 571 console.info(`Succeeded in getting power policy ${JSON.stringify(powerPolicy)}`); 572} catch (err) { 573 console.error(`Failed to get power policy. Code: ${err.code}, message: ${err.message}`); 574} 575``` 576 577## PowerPolicy<sup>11+</sup> 578 579电源策略。 580 581**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 582 583**系统接口:** 此接口为系统接口。 584 585| 名称 | 类型 | 只读 | 可选 | 说明 | 586| ----------- | --------| ----- | ---- | ------------------------------- | 587| powerPolicyAction | [PowerPolicyAction](#powerpolicyaction11) | 否 | 否 | 执行电源策略的动作。 | 588| delayTime | number | 否 | 否 | 延迟时间(单位:毫秒)。| 589 590## PowerScene<sup>11+</sup> 591 592执行电源策略的场景。 593 594**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 595 596**系统接口:** 此接口为系统接口。 597 598| 名称 | 值 | 说明 | 599| -------- | -------- | -------- | 600| TIME_OUT | 0 | 超时场景。 | 601 602## PowerPolicyAction<sup>11+</sup> 603 604执行电源策略的动作。 605 606**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 607 608**系统接口:** 此接口为系统接口。 609 610| 名称 | 值 | 说明 | 611| -------- | -------- | -------- | 612| NONE | 0 | 不执行动作。 | 613| AUTO_SUSPEND | 1 | 自动进入睡眠。 | 614| FORCE_SUSPEND | 2 | 强制进入睡眠。 | 615| HIBERNATE | 3 | 进入休眠。(当前电源子系统暂不支持) | 616| SHUTDOWN | 4 | 关机。 | 617