js-apis-enterprise-device-manager.md 36.1 KB
Newer Older
C
caiminggang 已提交
1 2
# 企业设备管理

3 4
本模块提供企业设备管理能力,使设备具备企业场景下所需的定制能力。

H
HelloCrease 已提交
5
> **说明:**
H
HelloCrease 已提交
6
>
C
caiminggang 已提交
7 8 9 10
> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

## 导入模块

H
HelloCrease 已提交
11
```js
C
caiminggang 已提交
12 13 14
import enterpriseDeviceManager from '@ohos.enterpriseDeviceManager';
```

15
## enterpriseDeviceManager.enableAdmin
C
caiminggang 已提交
16

L
liwuli 已提交
17
enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, callback: AsyncCallback\<void>): void
C
caiminggang 已提交
18 19 20

以异步方法根据给定的包名和类名激活设备管理员应用,使用Callback形式返回是否激活成功。

L
liwuli 已提交
21
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
C
caiminggang 已提交
22

H
HelloCrease 已提交
23
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
24

L
liwuli 已提交
25 26
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
27 28
**参数**

H
HelloCrease 已提交
29 30 31
| 参数名            | 类型                                  | 必填   | 说明                 |
| -------------- | ----------------------------------- | ---- | ------------------ |
| admin          | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用            |
L
liwuli 已提交
32 33
| enterpriseInfo | [EnterpriseInfo](#enterpriseinfo)   | 是    | 设备管理员应用的企业信息       |
| type           | [AdminType](#admintype)             | 是    | 激活的设备管理员类型         |
L
liwuli 已提交
34 35 36 37 38 39 40 41 42 43 44
| callback       | AsyncCallback\<void>                | 是    | callback方式返回是否激活成功 |

**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                           |          
| ------- | --------------------------------------------------------------- |
| 9200003 | The administrator ability component is invalid.                 |
| 9200004 | Failed to activate the administrator application of the device. |
| 9200007 | The system ability work abnormally.                             |
45 46 47 48 49 50 51 52 53 54 55 56

**示例**

```js
let wantTemp = {
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
};
let enterpriseInfo = {
    name: "enterprise name",
    description: "enterprise description"
}
L
liwuli 已提交
57
enterpriseDeviceManager.enableAdmin(wantTemp, enterpriseInfo, enterpriseDeviceManager.AdminType.ADMIN_TYPE_NORMAL, error => {
58 59 60 61
    if (error != null) {
        console.log("error occurs" + error);
        return;
    }
L
liwuli 已提交
62
    console.log("enableAdmin success");
63 64 65 66 67
});
```

## enterpriseDeviceManager.enableAdmin

L
liwuli 已提交
68
enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, userId: number, callback: AsyncCallback\<void>): void
69 70 71

以异步方法根据给定的包名和类名激活设备管理员应用,使用Callback形式返回是否激活成功。

L
liwuli 已提交
72
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
73

H
HelloCrease 已提交
74
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
75

L
liwuli 已提交
76 77
**系统API**: 此接口为系统接口。

78 79
**参数**

H
HelloCrease 已提交
80 81 82
| 参数名            | 类型                                  | 必填   | 说明                           |
| -------------- | ----------------------------------- | ---- | ---------------------------- |
| admin          | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用                      |
L
liwuli 已提交
83 84
| enterpriseInfo | [EnterpriseInfo](#enterpriseinfo)   | 是    | 设备管理员应用的企业信息                 |
| type           | [AdminType](#admintype)             | 是    | 激活的设备管理员类型                   |
H
HelloCrease 已提交
85
| userId         | number                              | 是    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
L
liwuli 已提交
86 87 88 89 90 91 92 93 94 95 96
| callback       | AsyncCallback\<void>                | 是    | callback方式返回是否激活成功           |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                           |          
| ------- | --------------------------------------------------------------- |
| 9200003 | The administrator ability component is invalid.                 |
| 9200004 | Failed to activate the administrator application of the device. |
| 9200007 | The system ability work abnormally.                             |
C
caiminggang 已提交
97 98 99

**示例**

H
HelloCrease 已提交
100
```js
C
caiminggang 已提交
101
let wantTemp = {
102 103
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
104 105
};
let enterpriseInfo = {
106 107
    name: "enterprise name",
    description: "enterprise description"
C
caiminggang 已提交
108
}
L
liwuli 已提交
109
enterpriseDeviceManager.enableAdmin(wantTemp, enterpriseInfo, enterpriseDeviceManager.AdminType.ADMIN_TYPE_NORMAL, 100, error => {
C
caiminggang 已提交
110 111
    if (error != null) {
        console.log("error occurs" + error);
112
        return;
C
caiminggang 已提交
113
    }
L
liwuli 已提交
114
    console.log("enableAdmin success");
C
caiminggang 已提交
115 116 117
});
```

118
## enterpriseDeviceManager.enableAdmin
C
caiminggang 已提交
119

L
liwuli 已提交
120
enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, userId?: number): Promise\<void>
C
caiminggang 已提交
121 122 123

以异步方法根据给定的包名和类名激活设备管理员应用,使用Promise形式返回是否激活成功。

L
liwuli 已提交
124
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
C
caiminggang 已提交
125

H
HelloCrease 已提交
126
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
127

L
liwuli 已提交
128 129
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
130 131
**参数**

H
HelloCrease 已提交
132 133 134
| 参数名            | 类型                                  | 必填   | 说明                           |
| -------------- | ----------------------------------- | ---- | ---------------------------- |
| admin          | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用                      |
L
liwuli 已提交
135 136
| enterpriseInfo | [EnterpriseInfo](#enterpriseinfo)   | 是    | 设备管理员应用的企业信息                 |
| type           | [AdminType](#admintype)             | 是    | 激活的设备管理员类型                   |
H
HelloCrease 已提交
137
| userId         | number                              | 否    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
C
caiminggang 已提交
138 139 140

**返回值:**

H
HelloCrease 已提交
141 142
| 类型                | 说明                |
| ----------------- | ----------------- |
L
liwuli 已提交
143 144 145 146 147 148 149 150 151 152 153
| Promise\<void>    | Promise形式返回是否激活成功 |

**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                           |          
| ------- | --------------------------------------------------------------- |
| 9200003 | The administrator ability component is invalid.                 |
| 9200004 | Failed to activate the administrator application of the device. |
| 9200007 | The system ability work abnormally.                             |
C
caiminggang 已提交
154 155 156

**示例**

H
HelloCrease 已提交
157
```js
C
caiminggang 已提交
158
let wantTemp = {
159 160
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
161 162
};
let enterpriseInfo = {
163 164
    name: "enterprise name",
    description: "enterprise description"
C
caiminggang 已提交
165
}
166
enterpriseDeviceManager.enableAdmin(wantTemp, enterpriseInfo, enterpriseDeviceManager.AdminType.ADMIN_TYPE_NORMAL, 100)
L
liwuli 已提交
167
.catch(error => {
168
    console.log("error occurs" + error);
C
caiminggang 已提交
169 170 171
});
```

172
## enterpriseDeviceManager.disableAdmin
C
caiminggang 已提交
173

L
liwuli 已提交
174
disableAdmin(admin: Want, callback: AsyncCallback\<void>): void
175 176 177

以异步方法根据给定的包名和类名将设备普通管理员应用去激活,使用Callback形式返回是否去激活成功。

L
liwuli 已提交
178
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
179

H
HelloCrease 已提交
180
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
181

L
liwuli 已提交
182 183
**系统API**: 此接口为系统接口。

184 185
**参数**

H
HelloCrease 已提交
186 187 188
| 参数名      | 类型                                  | 必填   | 说明                  |
| -------- | ----------------------------------- | ---- | ------------------- |
| admin    | [Want](js-apis-application-Want.md) | 是    | 普通设备管理员应用           |
L
liwuli 已提交
189 190 191 192 193 194 195 196 197
| callback | AsyncCallback\<void>                | 是    | callback方式返回是否去激活成功 |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |
198 199 200 201 202 203 204 205

**示例**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
L
liwuli 已提交
206
enterpriseDeviceManager.disableAdmin(wantTemp, error => {
207 208 209 210
    if (error != null) {
        console.log("error occurs" + error);
        return;
    }
L
liwuli 已提交
211
    console.log("disableAdmin success ");
212 213 214 215 216
});
```

## enterpriseDeviceManager.disableAdmin

L
liwuli 已提交
217
disableAdmin(admin: Want, userId: number, callback: AsyncCallback\<void>): void
C
caiminggang 已提交
218 219 220

以异步方法根据给定的包名和类名将设备普通管理员应用去激活,使用Callback形式返回是否去激活成功。

L
liwuli 已提交
221
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
C
caiminggang 已提交
222

H
HelloCrease 已提交
223
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
224

L
liwuli 已提交
225 226
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
227 228
**参数**

H
HelloCrease 已提交
229 230 231 232
| 参数名      | 类型                                  | 必填   | 说明                           |
| -------- | ----------------------------------- | ---- | ---------------------------- |
| admin    | [Want](js-apis-application-Want.md) | 是    | 普通设备管理员应用                    |
| userId   | number                              | 是    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
L
liwuli 已提交
233 234 235 236 237 238 239 240 241
| callback | AsyncCallback\<void>                | 是    | callback方式返回是否去激活成功          |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |
C
caiminggang 已提交
242 243 244

**示例**

H
HelloCrease 已提交
245
```js
C
caiminggang 已提交
246
let wantTemp = {
247 248
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
249
};
L
liwuli 已提交
250
enterpriseDeviceManager.disableAdmin(wantTemp, 100, error => {
C
caiminggang 已提交
251 252
    if (error != null) {
        console.log("error occurs" + error);
253
        return;
C
caiminggang 已提交
254
    }
L
liwuli 已提交
255
    console.log("disableAdmin success ");
C
caiminggang 已提交
256 257 258
});
```

259
## enterpriseDeviceManager.disableAdmin
C
caiminggang 已提交
260

L
liwuli 已提交
261
disableAdmin(admin: Want, userId?: number): Promise\<void>
C
caiminggang 已提交
262 263 264

以异步方法根据给定的包名和类名将设备普通管理员应用去激活,使用Promise形式返回是否去激活成功。

L
liwuli 已提交
265
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN
C
caiminggang 已提交
266

H
HelloCrease 已提交
267
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
268

L
liwuli 已提交
269 270
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
271 272
**参数**

H
HelloCrease 已提交
273 274 275 276
| 参数名    | 类型                                  | 必填   | 说明                           |
| ------ | ----------------------------------- | ---- | ---------------------------- |
| admin  | [Want](js-apis-application-Want.md) | 是    | 普通设备管理员应用                    |
| userId | number                              | 否    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
C
caiminggang 已提交
277 278 279

**返回值:**

H
HelloCrease 已提交
280 281
| 类型                | 说明                |
| ----------------- | ----------------- |
L
liwuli 已提交
282 283 284 285 286 287 288 289 290
| Promise\<void>    | Promise形式返回是否激活成功 |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |
C
caiminggang 已提交
291 292 293

**示例**

H
HelloCrease 已提交
294
```js
C
caiminggang 已提交
295
let wantTemp = {
296 297
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
298
};
L
liwuli 已提交
299
enterpriseDeviceManager.disableAdmin(wantTemp, 100).catch(error => {
300
    console.log("error occurs" + error);
C
caiminggang 已提交
301 302 303
});
```

304
## enterpriseDeviceManager.disableSuperAdmin
C
caiminggang 已提交
305

L
liwuli 已提交
306
disableSuperAdmin(bundleName: String, callback: AsyncCallback\<void>): void
C
caiminggang 已提交
307 308 309

以异步方法根据给定的包名将设备超级管理员应用去激活,使用Callback形式返回是否去激活成功。

L
liwuli 已提交
310 311
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN

H
HelloCrease 已提交
312
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
313

L
liwuli 已提交
314 315
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
316 317
**参数**

H
HelloCrease 已提交
318 319 320
| 参数名        | 类型                      | 必填   | 说明                  |
| ---------- | ----------------------- | ---- | ------------------- |
| bundleName | String                  | 是    | 超级设备管理员应用的包名        |
L
liwuli 已提交
321 322 323 324 325 326 327 328 329
| callback   | AsyncCallback\<void>    | 是    | callback方式返回是否去激活成功 |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |
C
caiminggang 已提交
330 331 332

**示例**

H
HelloCrease 已提交
333
```js
C
caiminggang 已提交
334
let bundleName = "com.example.myapplication";
L
liwuli 已提交
335
enterpriseDeviceManager.disableSuperAdmin(bundleName, error => {
C
caiminggang 已提交
336 337
    if (error != null) {
        console.log("error occurs" + error);
338
        return;
C
caiminggang 已提交
339
    }
L
liwuli 已提交
340
    console.log("disableSuperAdmin success");
C
caiminggang 已提交
341 342 343
});
```

344
## enterpriseDeviceManager.disableSuperAdmin
C
caiminggang 已提交
345

L
liwuli 已提交
346
disableSuperAdmin(bundleName: String): Promise\<void>
C
caiminggang 已提交
347 348 349

以异步方法根据给定的包名将设备超级管理员应用去激活,使用Promise形式返回是否去激活成功。

L
liwuli 已提交
350 351
**需要权限:** ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN

H
HelloCrease 已提交
352
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
353

L
liwuli 已提交
354 355
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
356 357
**参数**

H
HelloCrease 已提交
358 359 360
| 参数名        | 类型     | 必填   | 说明           |
| ---------- | ------ | ---- | ------------ |
| bundleName | String | 是    | 超级设备管理员应用的包名 |
C
caiminggang 已提交
361 362 363

**返回值:**

H
HelloCrease 已提交
364 365
| 类型                | 说明                |
| ----------------- | ----------------- |
L
liwuli 已提交
366 367 368 369 370 371 372 373 374
| Promise\<void>    | Promise形式返回是否激活成功 |

**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |
C
caiminggang 已提交
375 376 377

**示例**

H
HelloCrease 已提交
378
```js
C
caiminggang 已提交
379
let bundleName = "com.example.myapplication";
L
liwuli 已提交
380
enterpriseDeviceManager.disableSuperAdmin(bundleName).catch(error => {
381
    console.log("error occurs" + error);
C
caiminggang 已提交
382 383 384
});
```

385
## enterpriseDeviceManager.isAdminEnabled
C
caiminggang 已提交
386

387
isAdminEnabled(admin: Want, callback: AsyncCallback\<boolean>): void
C
caiminggang 已提交
388 389 390

以异步方法根据给定的包名和类名判断设备管理员应用是否被激活,使用Callback形式返回是否处于激活状态。

H
HelloCrease 已提交
391
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
392

L
liwuli 已提交
393 394
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
395 396
**参数**

H
HelloCrease 已提交
397 398 399 400
| 参数名      | 类型                                  | 必填   | 说明                   |
| -------- | ----------------------------------- | ---- | -------------------- |
| admin    | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用              |
| callback | AsyncCallback\<boolean>             | 是    | callback方式返回是否处于激活状态 |
401

L
liwuli 已提交
402 403 404 405 406 407 408 409
**错误码**:

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                              |          
| ------- | ----------------------------------------------------------------- |
| 9200005 | Failed to deactivate the administrator application of the device. |

410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431
**示例**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
enterpriseDeviceManager.isAdminEnabled(wantTemp, (error, result) => {
    if (error != null) {
        console.log("error occurs" + error);
        return;
    }
    console.log("result is " + result);
});
```

## enterpriseDeviceManager.isAdminEnabled

isAdminEnabled(admin: Want, userId: number, callback: AsyncCallback\<boolean>): void

以异步方法根据给定的包名和类名判断设备管理员应用是否被激活,使用Callback形式返回是否处于激活状态。

H
HelloCrease 已提交
432
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
433

L
liwuli 已提交
434 435
**系统API**: 此接口为系统接口。

436 437
**参数**

H
HelloCrease 已提交
438 439 440 441 442
| 参数名      | 类型                                  | 必填   | 说明                           |
| -------- | ----------------------------------- | ---- | ---------------------------- |
| admin    | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用                      |
| userId   | number                              | 是    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
| callback | AsyncCallback\<boolean>             | 是    | callback方式返回是否处于激活状态         |
C
caiminggang 已提交
443 444 445

**示例**

H
HelloCrease 已提交
446
```js
C
caiminggang 已提交
447
let wantTemp = {
448 449
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
450
};
451
enterpriseDeviceManager.isAdminEnabled(wantTemp, 100, (error, result) => {
C
caiminggang 已提交
452 453
    if (error != null) {
        console.log("error occurs" + error);
454
        return;
C
caiminggang 已提交
455
    }
H
HelloCrease 已提交
456
    console.log("result is " + result);
C
caiminggang 已提交
457 458 459
});
```

460
## enterpriseDeviceManager.isAdminEnabled
C
caiminggang 已提交
461

462
isAdminEnabled(admin: Want, userId?: number): Promise\<boolean>
C
caiminggang 已提交
463 464 465

以异步方法根据给定的包名和类名判断设备管理员应用是否被激活,使用Promise形式返回是否处于激活状态。

H
HelloCrease 已提交
466
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
467

L
liwuli 已提交
468 469
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
470 471
**参数**

H
HelloCrease 已提交
472 473 474 475
| 参数名    | 类型                                  | 必填   | 说明                           |
| ------ | ----------------------------------- | ---- | ---------------------------- |
| admin  | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用                      |
| userId | number                              | 否    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
C
caiminggang 已提交
476 477 478

**返回值:**

H
HelloCrease 已提交
479 480
| 类型                | 说明                  |
| ----------------- | ------------------- |
C
caiminggang 已提交
481 482 483 484
| Promise\<boolean> | Promise形式返回是否处于激活状态 |

**示例**

H
HelloCrease 已提交
485
```js
C
caiminggang 已提交
486
let wantTemp = {
487 488
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
489
};
490
enterpriseDeviceManager.isAdminEnabled(wantTemp, 100).then((result) => {
491
    console.log("result is " + result);
C
caiminggang 已提交
492
}).catch(error => {
493
    console.log("error occurs" + error);
C
caiminggang 已提交
494 495 496 497 498 499 500 501 502
});
```

## enterpriseDeviceManager.isSuperAdmin

isSuperAdmin(bundleName: String, callback: AsyncCallback\<boolean>): void

以异步方法根据给定的包名判断设备超级管理员应用是否被激活,使用Callback形式返回是否处于激活状态。

H
HelloCrease 已提交
503
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
504

L
liwuli 已提交
505 506
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
507 508
**参数**

H
HelloCrease 已提交
509 510 511 512
| 参数名        | 类型                      | 必填   | 说明                   |
| ---------- | ----------------------- | ---- | -------------------- |
| bundleName | String                  | 是    | 设备管理员应用              |
| callback   | AsyncCallback\<boolean> | 是    | callback方式返回是否处于激活状态 |
C
caiminggang 已提交
513 514 515

**示例**

H
HelloCrease 已提交
516
```js
C
caiminggang 已提交
517 518 519 520
let bundleName = "com.example.myapplication";
enterpriseDeviceManager.isSuperAdmin(bundleName, (error, result) => {
    if (error != null) {
        console.log("error occurs" + error);
521
        return;
C
caiminggang 已提交
522
    }
H
HelloCrease 已提交
523
    console.log("result is " + result);
C
caiminggang 已提交
524 525 526 527 528 529 530 531 532
});
```

## enterpriseDeviceManager.isSuperAdmin

isSuperAdmin(bundleName: String): Promise\<boolean>

以异步方法根据给定的包名判断设备超级管理员应用是否被激活,使用Promise形式返回是否处于激活状态。

H
HelloCrease 已提交
533
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
534

L
liwuli 已提交
535 536
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
537 538
**参数**

H
HelloCrease 已提交
539 540 541
| 参数名        | 类型     | 必填   | 说明        |
| ---------- | ------ | ---- | --------- |
| bundleName | String | 是    | 超级设备管理员应用 |
C
caiminggang 已提交
542 543 544

**返回值:**

H
HelloCrease 已提交
545 546
| 类型                | 说明                  |
| ----------------- | ------------------- |
C
caiminggang 已提交
547 548 549 550
| Promise\<boolean> | Promise形式返回是否处于激活状态 |

**示例**

H
HelloCrease 已提交
551
```js
C
caiminggang 已提交
552 553
let bundleName = "com.example.myapplication";
enterpriseDeviceManager.isSuperAdmin(bundleName).then((result) => {
554
    console.log("result is " + result);
C
caiminggang 已提交
555
}).catch(error => {
556
    console.log("error occurs" + error);
C
caiminggang 已提交
557 558 559 560 561 562 563 564 565
});
```

## enterpriseDeviceManager.getDeviceSettingsManager

getDeviceSettingsManager(callback: AsyncCallback&lt;DeviceSettingsManager&gt;): void

获取DeviceSettingsManager对象,使用callback形式返回DeviceSettingsManager对象。

H
HelloCrease 已提交
566
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
567 568 569

**参数:**

H
HelloCrease 已提交
570 571
| 参数名      | 类型                                      | 必填   | 说明                                  |
| -------- | --------------------------------------- | ---- | ----------------------------------- |
F
fangyun 已提交
572
| callback | AsyncCallback<[DeviceSettingsManager](js-apis-enterpriseDeviceManager-DeviceSettingsManager.md)&gt; | 是    | callback方式返回DeviceSettingsManager对象 |
C
caiminggang 已提交
573

L
liwuli 已提交
574 575 576 577 578 579 580 581 582
**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                                         |          
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | The application is not a administrator of the device.                        |
| 9200002 | The administrator application does not have permission to manage the device. |

C
caiminggang 已提交
583 584
**示例:**

H
HelloCrease 已提交
585
```js
C
caiminggang 已提交
586
let wantTemp = {
587 588
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
589 590 591
};
enterpriseDeviceManager.getDeviceSettingsManager((error, mgr) => {
    if (error != null) {
L
liwuli 已提交
592
        console.log("error code:" + error.code);
593
        return;
C
caiminggang 已提交
594
    }
L
liwuli 已提交
595
    mgr.setDateTime(wantTemp, 1526003846000, (error) => { 
C
caiminggang 已提交
596
        if (error != null) {
L
liwuli 已提交
597
            console.log("error code:" + error.code);
C
caiminggang 已提交
598 599 600 601 602 603 604 605 606 607 608
        }
    });
});
```

## enterpriseDeviceManager.getDeviceSettingsManager

getDeviceSettingsManager(): Promise&lt;DeviceSettingsManager&gt;

获取DeviceSettingsManager对象,使用Promise形式返回DeviceSettingsManager对象。

H
HelloCrease 已提交
609
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
610 611 612

**返回值:**

H
HelloCrease 已提交
613 614
| 类型                                   | 说明                                 |
| ------------------------------------ | ---------------------------------- |
F
fangyun 已提交
615
| Promise&lt;[DeviceSettingsManager](js-apis-enterpriseDeviceManager-DeviceSettingsManager.md)&gt; | Promise方式返回DeviceSettingsManager对象 |
C
caiminggang 已提交
616

L
liwuli 已提交
617 618 619 620 621 622 623 624 625
**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                                         |          
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | The application is not a administrator of the device.                        |
| 9200002 | The administrator application does not have permission to manage the device. |

C
caiminggang 已提交
626 627
**示例:**

H
HelloCrease 已提交
628
```js
C
caiminggang 已提交
629
let wantTemp = {
630 631
    bundleName: "bundleName",
    abilityName: "abilityName",
C
caiminggang 已提交
632
};
633
enterpriseDeviceManager.getDeviceSettingsManager().then((mgr) => {
L
liwuli 已提交
634 635
    mgr.setDateTime(wantTemp, 1526003846000).catch((error) => {
        console.log("error code:" + error.code);
C
caiminggang 已提交
636 637
    })
}).catch((error) => {
L
liwuli 已提交
638
    console.log("error code:" + error.code);
C
caiminggang 已提交
639 640 641 642 643
})
```

## enterpriseDeviceManager.setEnterpriseInfo

L
liwuli 已提交
644
setEnterpriseInfo(admin: Want, enterpriseInfo: EnterpriseInfo, callback: AsyncCallback\<void>;): void
C
caiminggang 已提交
645 646 647

设置设备管理员应用的企业信息,使用callback形式返回是否设置成功。

L
liwuli 已提交
648 649
**需要权限:** ohos.permission.SET_ENTERPRISE_INFO

H
HelloCrease 已提交
650
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
651

L
liwuli 已提交
652 653
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
654 655
**参数:**

H
HelloCrease 已提交
656 657 658
| 参数名            | 类型                                  | 必填   | 说明                     |
| -------------- | ----------------------------------- | ---- | ---------------------- |
| admin          | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用                |
L
liwuli 已提交
659
| enterpriseInfo | [EnterpriseInfo](#enterpriseinfo)   | 是    | 设备管理员应用的企业信息           |
L
liwuli 已提交
660 661 662 663 664 665 666 667 668
| callback       | AsyncCallback\<void>;               | 是    | callback方式返回是否设置企业信息成功 |

**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                  |          
| ------- | ----------------------------------------------------- |
| 9200001 | The application is not a administrator of the device. |
C
caiminggang 已提交
669 670 671

**示例:**

H
HelloCrease 已提交
672
```js
C
caiminggang 已提交
673
let wantTemp = {
674 675
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
676 677
};
let enterpriseInfo = {
678 679
    name: "enterprise name",
    description: "enterprise description"
C
caiminggang 已提交
680
}
L
liwuli 已提交
681 682 683 684 685 686
enterpriseDeviceManager.setEnterpriseInfo(wantTemp, enterpriseInfo, error => {
    if (error != null) {
        console.log("error occurs" + error);
        return;
    }
    console.log("setEnterpriseInfo success");
C
caiminggang 已提交
687 688 689 690 691
});
```

## enterpriseDeviceManager.setEnterpriseInfo

L
liwuli 已提交
692
setEnterpriseInfo(admin: Want, enterpriseInfo: EnterpriseInfo): Promise\<void>;
C
caiminggang 已提交
693

694
设置设备管理员应用的企业信息,使用Promise形式返回是否设置成功。
C
caiminggang 已提交
695

L
liwuli 已提交
696 697
**需要权限:** ohos.permission.SET_ENTERPRISE_INFO

H
HelloCrease 已提交
698
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
699

L
liwuli 已提交
700 701
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
702 703
**参数:**

H
HelloCrease 已提交
704 705 706
| 参数名            | 类型                                  | 必填   | 说明           |
| -------------- | ----------------------------------- | ---- | ------------ |
| admin          | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用      |
L
liwuli 已提交
707
| enterpriseInfo | [EnterpriseInfo](#enterpriseinfo)   | 是    | 设备管理员应用的企业信息 |
C
caiminggang 已提交
708 709 710

**返回值:**

C
caiminggang 已提交
711 712
| 类型                | 说明                    |
| ----------------- | --------------------- |
L
liwuli 已提交
713 714 715 716 717 718 719 720 721
| Promise\<void>    | Promise方式返回是否设置企业信息成功 |

**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                  |          
| ------- | ----------------------------------------------------- |
| 9200001 | The application is not a administrator of the device. |
C
caiminggang 已提交
722 723 724

**示例:**

H
HelloCrease 已提交
725
```js
C
caiminggang 已提交
726
let wantTemp = {
727 728
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
729 730
};
let enterpriseInfo = {
731 732
    name: "enterprise name",
    description: "enterprise description"
C
caiminggang 已提交
733
}
L
liwuli 已提交
734
enterpriseDeviceManager.setEnterpriseInfo(wantTemp, enterpriseInfo).catch(error => {
735
    console.log("error occurs" + error);
C
caiminggang 已提交
736 737 738 739 740 741 742 743 744
});
```

## enterpriseDeviceManager.getEnterpriseInfo

getEnterpriseInfo(admin: Want, callback: AsyncCallback&lt;EnterpriseInfo&gt;): void

获取设备管理员应用的企业信息,使用callback形式返回设备管理员应用的企业信息。

H
HelloCrease 已提交
745
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
746

L
liwuli 已提交
747 748
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
749 750
**参数:**

H
HelloCrease 已提交
751 752 753
| 参数名      | 类型                                       | 必填   | 说明                       |
| -------- | ---------------------------------------- | ---- | ------------------------ |
| admin    | [Want](js-apis-application-Want.md)      | 是    | 设备管理员应用                  |
L
liwuli 已提交
754
| callback | AsyncCallback&lt;[EnterpriseInfo](#enterpriseinfo)&gt; | 是    | callback方式返回设备管理员应用的企业信息 |
C
caiminggang 已提交
755

L
liwuli 已提交
756 757 758 759 760 761 762 763
**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                  |          
| ------- | ----------------------------------------------------- |
| 9200001 | The application is not a administrator of the device. |

C
caiminggang 已提交
764 765
**示例:**

H
HelloCrease 已提交
766
```js
C
caiminggang 已提交
767
let wantTemp = {
768 769
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
770 771 772 773
};
enterpriseDeviceManager.getEnterpriseInfo(wantTemp, (error, result) => {
    if (error != null) {
        console.log("error occurs" + error);
774
        return;
C
caiminggang 已提交
775 776
    }
    console.log(result.name);
777
    console.log(result.description);
C
caiminggang 已提交
778 779 780 781 782
});
```

## enterpriseDeviceManager.getEnterpriseInfo

783
getEnterpriseInfo(admin: Want): Promise&lt;EnterpriseInfo&gt;
C
caiminggang 已提交
784 785 786

获取设备管理员应用的企业信息,使用Promise形式返回设备管理员应用的企业信息。

H
HelloCrease 已提交
787
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
788

L
liwuli 已提交
789 790
**系统API**: 此接口为系统接口。

C
caiminggang 已提交
791 792
**参数:**

H
HelloCrease 已提交
793 794 795
| 参数名   | 类型                                  | 必填   | 说明      |
| ----- | ----------------------------------- | ---- | ------- |
| admin | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用 |
C
caiminggang 已提交
796 797 798

**返回值:**

H
HelloCrease 已提交
799 800
| 类型                                       | 说明                        |
| ---------------------------------------- | ------------------------- |
L
liwuli 已提交
801
| Promise&lt;[EnterpriseInfo](#enterpriseinfo)&gt; | Promise方式返回设备管理员应用的企业信息对象 |
C
caiminggang 已提交
802

L
liwuli 已提交
803 804 805 806 807 808 809 810
**错误码**

以下的错误码的详细介绍请参见[企业设备管理错误码](../errorcodes/errorcode-EnterpriseDeviceManager.md)

| 类型      | 说明                                                  |          
| ------- | ----------------------------------------------------- |
| 9200001 | The application is not a administrator of the device. |

C
caiminggang 已提交
811 812
**示例:**

H
HelloCrease 已提交
813
```js
C
caiminggang 已提交
814
let wantTemp = {
815 816
    bundleName: "com.example.myapplication",
    abilityName: "com.example.myapplication.MainAbility",
C
caiminggang 已提交
817 818
};
enterpriseDeviceManager.getEnterpriseInfo(wantTemp).then((result) => {
819 820
    console.log(result.name);
    console.log(result.description);
C
caiminggang 已提交
821
}).catch(error => {
822
    console.log("error occurs" + error);
C
caiminggang 已提交
823 824 825
});
```

F
fangyun 已提交
826 827
## enterpriseDeviceManager.subscribeManagedEvent

F
fangyun 已提交
828
subscribeManagedEvent(admin: Want, managedEvents: Array\<ManagedEvent>, callback: AsyncCallback\<void>): void
F
fangyun 已提交
829

F
update  
fangyun 已提交
830
订阅系统管理事件。使用callback异步回调。
F
fangyun 已提交
831

L
liwuli 已提交
832
**需要权限:** ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT
F
fangyun 已提交
833 834 835

**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager

L
liwuli 已提交
836 837
**系统API**: 此接口为系统接口。

F
fangyun 已提交
838 839 840 841 842
**参数:**

| 参数名   | 类型                                  | 必填   | 说明      |
| ----- | ----------------------------------- | ---- | ------- |
| admin | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用。 |
F
fangyun 已提交
843
| managedEvents  | Array\<[ManagedEvent](#managedevent)> | 是 | 订阅事件数组。 |
F
update  
fangyun 已提交
844
| callback | AsyncCallback\<void> | 是 | 回调函数。当系统管理事件订阅成功err为null,否则为错误对象。 |
F
fangyun 已提交
845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862

**示例:**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
let events = [0, 1];
enterpriseDeviceManager.subscribeManagedEvent(wantTemp, events, (error) => {
    if (error) {
        console.log("error code:" + error.code + " error message:" + error.message);
    }
});
```

## enterpriseDeviceManager.subscribeManagedEvent

F
fangyun 已提交
863
subscribeManagedEvent(admin: Want, managedEvents: Array\<ManagedEvent>): Promise\<void>
F
fangyun 已提交
864

F
update  
fangyun 已提交
865
订阅系统管理事件。使用Promise异步回调。
F
fangyun 已提交
866

L
liwuli 已提交
867
**需要权限:** ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT
F
fangyun 已提交
868 869 870

**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager

L
liwuli 已提交
871 872
**系统API**: 此接口为系统接口。

F
fangyun 已提交
873 874 875 876 877
**参数:**

| 参数名   | 类型                                  | 必填   | 说明      |
| ----- | ----------------------------------- | ---- | ------- |
| admin | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用。 |
F
fangyun 已提交
878
| managedEvents  | Array\<[ManagedEvent](#managedevent)> | 是 | 订阅事件数组。 |
F
fangyun 已提交
879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901

**返回值:**

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

**示例:**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
let events = [0, 1];
enterpriseDeviceManager.subscribeManagedEvent(wantTemp, events).then(() => {
}).catch((error) => {
    console.log("error code:" + error.code + " error message:" + error.message);
})
```

## enterpriseDeviceManager.unsubscribeManagedEvent

F
fangyun 已提交
902
unsubscribeManagedEvent(admin: Want, managedEvents: Array\<ManagedEvent>, callback: AsyncCallback\<void>): void
F
fangyun 已提交
903

F
update  
fangyun 已提交
904
取消订阅系统管理事件。使用callback异步回调。
F
fangyun 已提交
905

L
liwuli 已提交
906
**需要权限:** ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT
F
fangyun 已提交
907 908 909

**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager

L
liwuli 已提交
910 911
**系统API**: 此接口为系统接口。

F
fangyun 已提交
912 913 914 915 916
**参数:**

| 参数名   | 类型                                  | 必填   | 说明      |
| ----- | ----------------------------------- | ---- | ------- |
| admin | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用。 |
F
fangyun 已提交
917
| managedEvents  | Array\<[ManagedEvent](#managedevent)> | 是 | 取消订阅事件数组。 |
F
update  
fangyun 已提交
918
| callback | AsyncCallback\<void> | 是 | 回调函数。当系统管理事件取消订阅成功err为null,否则为错误对象。 |
F
fangyun 已提交
919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936

**示例:**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
let events = [0, 1];
enterpriseDeviceManager.unsubscribeManagedEvent(wantTemp, events, (error) => {
    if (error) {
        console.log("error code:" + error.code + " error message:" + error.message);
    }
});
```

## enterpriseDeviceManager.unsubscribeManagedEvent

F
fangyun 已提交
937
unsubscribeManagedEvent(admin: Want, managedEvents: Array\<ManagedEvent>): Promise\<void>
F
fangyun 已提交
938

F
update  
fangyun 已提交
939
取消订阅系统管理事件。使用callback异步回调。
F
fangyun 已提交
940

L
liwuli 已提交
941
**需要权限:** ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT
F
fangyun 已提交
942 943 944

**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager

L
liwuli 已提交
945 946
**系统API**: 此接口为系统接口。

F
fangyun 已提交
947 948 949 950 951
**参数:**

| 参数名   | 类型                                  | 必填   | 说明      |
| ----- | ----------------------------------- | ---- | ------- |
| admin | [Want](js-apis-application-Want.md) | 是    | 设备管理员应用。 |
F
fangyun 已提交
952
| managedEvents  | Array\<[ManagedEvent](#managedevent)> | 是 | 取消订阅事件数组。 |
F
fangyun 已提交
953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973

**返回值:**

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

**示例:**

```js
let wantTemp = {
    bundleName: "bundleName",
    abilityName: "abilityName",
};
let events = [0, 1];
enterpriseDeviceManager.unsubscribeManagedEvent(wantTemp, events).then(() => {
}).catch((error) => {
    console.log("error code:" + error.code + " error message:" + error.message);
})
```

C
caiminggang 已提交
974 975 976 977
## EnterpriseInfo

设备管理员应用的企业信息

H
HelloCrease 已提交
978
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
C
caiminggang 已提交
979

H
HelloCrease 已提交
980 981 982 983
| 名称          | 读写属性 | 类型     | 必填   | 描述                |
| ----------- | ---- | ------ | ---- | ----------------- |
| name        | 只读   | string | 是    | 表示设备管理员应用所属企业的名称。 |
| description | 只读   | string | 是    | 表示设备管理员应用所属企业的描述。 |
C
caiminggang 已提交
984 985 986 987 988

## AdminType

设备管理员应用的管理员类型。

H
HelloCrease 已提交
989
**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 
C
caiminggang 已提交
990

H
HelloCrease 已提交
991 992
| 名称                | 默认值  | 说明    |
| ----------------- | ---- | ----- |
C
caiminggang 已提交
993
| ADMIN_TYPE_NORMAL | 0x00 | 普通管理员 |
H
HelloCrease 已提交
994
| ADMIN_TYPE_SUPER  | 0x01 | 超级管理员 |
F
fangyun 已提交
995 996 997

## ManagedEvent

F
update  
fangyun 已提交
998
可订阅系统管理事件。
F
fangyun 已提交
999 1000 1001 1002 1003 1004

**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 

| 名称                | 默认值  | 说明    |
| ----------------- | ---- | ----- |
| MANAGED_EVENT_BUNDLE_ADDED | 0 | 应用安装事件。 |
F
fangyun 已提交
1005
| MANAGED_EVENT_BUNDLE_REMOVED  | 1 | 应用卸载事件。 |
F
fangyun 已提交
1006