# @ohos.enterprise.adminManager (Enterprise Device Management) The **adminManager** module provides enterprise device management capabilities so that devices have the custom capabilities required in enterprise settings. > **NOTE** > > - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. > > - The APIs provided by this module can be called only by a [device administrator application](enterpriseDeviceManagement-overview.md#basic-concepts). ## Modules to Import ```ts import adminManager from '@ohos.enterprise.adminManager'; ``` ## adminManager.enableAdmin enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, callback: AsyncCallback\): void Enables a device administrator application for the current user. The super device administrator application can be activated only by the administrator. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------------- | ----------------------------------- | ---- | ------------------ | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to enable. | | enterpriseInfo | [EnterpriseInfo](#enterpriseinfo) | Yes | Enterprise information of the device administrator application. | | type | [AdminType](#admintype) | Yes | Type of the device administrator application to enable. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | --------------------------------------------------------------- | | 9200003 | the administrator ability component is invalid. | | 9200004 | failed to enable the administrator application of the device. | | 9200007 | the system ability work abnormally. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; let enterpriseInfo: adminManager.EnterpriseInfo = { name: 'enterprise name', description: 'enterprise description' } adminManager.enableAdmin(wantTemp, enterpriseInfo, adminManager.AdminType.ADMIN_TYPE_SUPER, (err) => { if (err) { console.error(`Failed to enable admin. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in enabling admin'); }); ``` ## adminManager.enableAdmin enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, userId: number, callback: AsyncCallback\): void Enables a device administrator application for the specified user. The super device administrator application can be activated only by the administrator. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------------- | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to enable. | | enterpriseInfo | [EnterpriseInfo](#enterpriseinfo) | Yes | Enterprise information of the device administrator application. | | type | [AdminType](#admintype) | Yes | Type of the device administrator application to enable. | | userId | number | Yes | User ID, which must be greater than or equal to 0.
The default value is the user ID of the caller. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object. | **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | --------------------------------------------------------------- | | 9200003 | the administrator ability component is invalid. | | 9200004 | failed to enable the administrator application of the device. | | 9200007 | the system ability work abnormally. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; let enterpriseInfo: adminManager.EnterpriseInfo = { name: 'enterprise name', description: 'enterprise description' } adminManager.enableAdmin(wantTemp, enterpriseInfo, adminManager.AdminType.ADMIN_TYPE_NORMAL, 100, (err) => { if (err) { console.error(`Failed to enable admin. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in enabling admin'); }); ``` ## adminManager.enableAdmin enableAdmin(admin: Want, enterpriseInfo: EnterpriseInfo, type: AdminType, userId?: number): Promise\ Enables a device administrator application for the current or specified user. The super device administrator application can be activated only by the administrator. This API uses a promise to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------------- | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to enable. | | enterpriseInfo | [EnterpriseInfo](#enterpriseinfo) | Yes | Enterprise information of the device administrator application. | | type | [AdminType](#admintype) | Yes | Type of the device administrator application to enable. | | userId | number | No | User ID, which must be greater than or equal to 0.
- If **userId** is passed in, the application of the specified user is enabled.
- If **userId** is not passed in, the application of the current user is enabled.| **Return value** | Type | Description | | ----------------- | ----------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | --------------------------------------------------------------- | | 9200003 | the administrator ability component is invalid. | | 9200004 | failed to enable the administrator application of the device. | | 9200007 | the system ability work abnormally. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; let enterpriseInfo: adminManager.EnterpriseInfo = { name: 'enterprise name', description: 'enterprise description' } adminManager.enableAdmin(wantTemp, enterpriseInfo, adminManager.AdminType.ADMIN_TYPE_NORMAL, 100).catch( (err: BusinessError) => { console.error(`Failed to enable admin. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.disableAdmin disableAdmin(admin: Want, callback: AsyncCallback\): void Disables a common administrator application for the current user. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------- | ----------------------------------- | ---- | ------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Common administrator application to disable. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------------------- | | 9200005 | failed to disable the administrator application of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.disableAdmin(wantTemp, (err) => { if (err) { console.error(`Failed to disable admin. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in disabling admin'); }); ``` ## adminManager.disableAdmin disableAdmin(admin: Want, userId: number, callback: AsyncCallback\): void Disables a common administrator application for the specified user. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------- | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Common administrator application to disable. | | userId | number | Yes | User ID, which must be greater than or equal to 0.
The default value is the user ID of the caller. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object. | **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------------------- | | 9200005 | failed to disable the administrator application of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.disableAdmin(wantTemp, 100, (err) => { if (err) { console.error(`Failed to disable admin. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in disabling admin'); }); ``` ## adminManager.disableAdmin disableAdmin(admin: Want, userId?: number): Promise\ Disables a common administrator application for the current or specified user. This API uses a promise to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ------ | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Common administrator application to disable. | | userId | number | No | User ID, which must be greater than or equal to 0.
- If **userId** is passed in, the application of the specified user is disabled.
- If **userId** is not passed in, the application of the current user is disabled.| **Return value** | Type | Description | | ----------------- | ----------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------------------- | | 9200005 | failed to disable the administrator application of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.disableAdmin(wantTemp, 100).catch((err: BusinessError) => { console.error(`Failed to disable admin. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.disableSuperAdmin disableSuperAdmin(bundleName: String, callback: AsyncCallback\): void Disables a super administrator application for the administrator based on **bundleName**. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ---------- | ----------------------- | ---- | ------------------- | | bundleName | String | Yes | Bundle name of the super administrator application to disable. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------------------- | | 9200005 | failed to disable the administrator application of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let bundleName: string = 'com.example.myapplication'; adminManager.disableSuperAdmin(bundleName, (err) => { if (err) { console.error(`Failed to disable super admin. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in disabling super admin'); }); ``` ## adminManager.disableSuperAdmin disableSuperAdmin(bundleName: String): Promise\ Disables a super administrator application for the administrator based on **bundleName**. This API uses a promise to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ---------- | ------ | ---- | ------------ | | bundleName | String | Yes | Bundle name of the super administrator application to disable.| **Return value** | Type | Description | | ----------------- | ----------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------------------- | | 9200005 | failed to disable the administrator application of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let bundleName: string = 'com.example.myapplication'; adminManager.disableSuperAdmin(bundleName).catch((err: BusinessError) => { console.error(`Failed to disable super admin. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.isAdminEnabled isAdminEnabled(admin: Want, callback: AsyncCallback\): void Checks whether a device administrator application of the current user is enabled. This API uses an asynchronous callback to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------- | ----------------------------------- | ---- | -------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to check. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null** and **data** is a Boolean value (**true** means that the device administrator application is enabled; and **false** means the opposite). If the operation fails, **err** is an error object.| **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.isAdminEnabled(wantTemp, (err, result) => { if (err) { console.error(`Failed to query admin is enabled or not. Code: ${err.code}, message: ${err.message}`); return; } console.info(`Succeeded in querying admin is enabled or not, result : ${result}`); }); ``` ## adminManager.isAdminEnabled isAdminEnabled(admin: Want, userId: number, callback: AsyncCallback\): void Checks whether a device administrator application of the specified user is enabled. This API uses an asynchronous callback to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------- | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to check. | | userId | number | Yes | User ID, which must be greater than or equal to 0.
The default value is the user ID of the caller. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null** and **data** is a Boolean value (**true** means that the device administrator application is enabled; and **false** means the opposite). If the operation fails, **err** is an error object. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.isAdminEnabled(wantTemp, 100, (err, result) => { if (err) { console.error(`Failed to query admin is enabled. Code: ${err.code}, message: ${err.message}`); return; } console.info(`Succeeded in querying admin is enabled or not, result : ${result}`); }); ``` ## adminManager.isAdminEnabled isAdminEnabled(admin: Want, userId?: number): Promise\ Checks whether a device administrator application of the current or specified user is enabled. This API uses a promise to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ------ | ----------------------------------- | ---- | ---------------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application to check. | | userId | number | No | User ID, which must be greater than or equal to 0.
- If **userId** is passed in, the application of the specified user is checked.
- If **userId** is not passed in, the application of the current user is checked.| **Return value** | Type | Description | | ----------------- | ------------------- | | Promise\ | Promise used to return the result. The value **true** means the device administrator application is enabled; the value **false** means the opposite.| **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; adminManager.isAdminEnabled(wantTemp, 100).then((result) => { console.info(`Succeeded in querying admin is enabled or not, result : ${result}`); }).catch((err: BusinessError) => { console.error(`Failed to query admin is enabled or not. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.isSuperAdmin isSuperAdmin(bundleName: String, callback: AsyncCallback\): void Checks whether a super administrator application of the administrator is enabled based on **bundleName**. This API uses an asynchronous callback to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ---------- | ----------------------- | ---- | -------------------- | | bundleName | String | Yes | Super administrator application to check. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null** and **data** is a Boolean value (**true** means that the device administrator application is enabled; and **false** means the opposite). If the operation fails, **err** is an error object.| **Example** ```ts import Want from '@ohos.app.ability.Want'; let bundleName: string = 'com.example.myapplication'; adminManager.isSuperAdmin(bundleName, (err, result) => { if (err) { console.error(`Failed to query admin is super admin or not. Code: ${err.code}, message: ${err.message}`); return; } console.info(`Succeeded in querying admin is super admin or not, result : ${result}`); }); ``` ## adminManager.isSuperAdmin isSuperAdmin(bundleName: String): Promise\ Checks whether a super administrator application of the administrator is enabled based on **bundleName**. This API uses a promise to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ---------- | ------ | ---- | --------- | | bundleName | String | Yes | Super administrator application to check.| **Return value** | ID | Error Message | | ----------------- | ------------------- | | Promise\ | Promise used to return the result. The value **true** means the super administrator application is enabled; the value **false** means the opposite. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let bundleName: string = 'com.example.myapplication'; adminManager.isSuperAdmin(bundleName).then((result) => { console.info(`Succeeded in querying admin is super admin or not, result : ${result}`); }).catch((err: BusinessError) => { console.error(`Failed to query admin is super admin or not. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.setEnterpriseInfo setEnterpriseInfo(admin: Want, enterpriseInfo: EnterpriseInfo, callback: AsyncCallback\): void Sets enterprise information for a device administrator application. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.SET_ENTERPRISE_INFO **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------------- | ----------------------------------- | ---- | ---------------------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application. | | enterpriseInfo | [EnterpriseInfo](#enterpriseinfo) | Yes | Enterprise information to set. | | callback | AsyncCallback\ | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; let enterpriseInfo: adminManager.EnterpriseInfo = { name: 'enterprise name', description: 'enterprise description' } adminManager.setEnterpriseInfo(wantTemp, enterpriseInfo, (err) => { if (err) { console.error(`Failed to set enterprise info. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in setting enterprise info'); }); ``` ## adminManager.setEnterpriseInfo setEnterpriseInfo(admin: Want, enterpriseInfo: EnterpriseInfo): Promise\ Sets enterprise information for a device administrator application. This API uses a promise to return the result. **Required permissions**: ohos.permission.SET_ENTERPRISE_INFO **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------------- | ----------------------------------- | ---- | ------------ | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application. | | enterpriseInfo | [EnterpriseInfo](#enterpriseinfo) | Yes | Enterprise information to set.| **Return value** | Type | Description | | ----------------- | --------------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; let enterpriseInfo: adminManager.EnterpriseInfo = { name: 'enterprise name', description: 'enterprise description' } adminManager.setEnterpriseInfo(wantTemp, enterpriseInfo).catch((err: BusinessError) => { console.error(`Failed to set enterprise info. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.getEnterpriseInfo getEnterpriseInfo(admin: Want, callback: AsyncCallback<EnterpriseInfo>): void Obtains the enterprise information of a device administrator application. This API uses an asynchronous callback to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | -------- | ---------------------------------------- | ---- | ------------------------ | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application. | | callback | AsyncCallback<[EnterpriseInfo](#enterpriseinfo)> | Yes | Callback invoked to return the result. If the operation is successful, **err** is **null** and **data** is the enterprise information of the device administrator application obtained. If the operation fails, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; adminManager.getEnterpriseInfo(wantTemp, (err, result) => { if (err) { console.error(`Failed to get enterprise info. Code: ${err.code}, message: ${err.message}`); return; } console.info(`Succeeded in getting enterprise info, enterprise name : ${result.name}, enterprise description : ${result.description}`); }); ``` ## adminManager.getEnterpriseInfo getEnterpriseInfo(admin: Want): Promise<EnterpriseInfo> Obtains the enterprise information of a device administrator application. This API uses a promise to return the result. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| **Return value** | Type | Description | | ---------------------------------------- | ------------------------- | | Promise<[EnterpriseInfo](#enterpriseinfo)> | Promise used to return the enterprise information obtained.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'com.example.myapplication', abilityName: 'EntryAbility', }; adminManager.getEnterpriseInfo(wantTemp).then((result) => { console.info(`Succeeded in getting enterprise info, enterprise name : ${result.name}, enterprise description : ${result.description}`); }).catch((err: BusinessError) => { console.error(`Failed to get enterprise info. Code: ${err.code}, message: ${err.message}`); }); ``` ## adminManager.subscribeManagedEvent subscribeManagedEvent(admin: Want, managedEvents: Array\, callback: AsyncCallback\): void Subscribes to system management events of a device administrator application. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | managedEvents | Array\<[ManagedEvent](#managedevent)> | Yes| Array of events to subscribe to.| | callback | AsyncCallback\ | Yes| Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). |ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200008 | the specified system events enum is invalid. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let events: Array = [adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_ADDED, adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_REMOVED]; adminManager.subscribeManagedEvent(wantTemp, events, (err) => { if (err) { console.error(`Failed to subscribe managed event. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in subscribe managed event'); }); ``` ## adminManager.subscribeManagedEvent subscribeManagedEvent(admin: Want, managedEvents: Array\): Promise\ Subscribes to system management events of a device administrator application. This API uses a promise to return the result. **Required permissions**: ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | managedEvents | Array\<[ManagedEvent](#managedevent)> | Yes| Array of events to subscribe to.| **Return value** | Type | Description | | ----- | ----------------------------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200008 | the specified system events enum is invalid. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let events: Array = [adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_ADDED, adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_REMOVED]; adminManager.subscribeManagedEvent(wantTemp, events).then(() => { }).catch((err: BusinessError) => { console.error(`Failed to subscribe managed event. Code: ${err.code}, message: ${err.message}`); }) ``` ## adminManager.unsubscribeManagedEvent unsubscribeManagedEvent(admin: Want, managedEvents: Array\, callback: AsyncCallback\): void Unsubscribes from system management events of a device administrator application. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | managedEvents | Array\<[ManagedEvent](#managedevent)> | Yes| Array of events to unsubscribe from.| | callback | AsyncCallback\ | Yes| Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200008 | the specified system events enum is invalid. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let events: Array = [adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_ADDED, adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_REMOVED]; adminManager.unsubscribeManagedEvent(wantTemp, events, (err) => { if (err) { console.error(`Failed to unsubscribe managed event. Code: ${err.code}, message: ${err.message}`); return; } console.info('Succeeded in unsubscribe managed event'); }); ``` ## adminManager.unsubscribeManagedEvent unsubscribeManagedEvent(admin: Want, managedEvents: Array\): Promise\ Unsubscribes from system management events of a device administrator application. This API uses a promise to return the result. **Required permissions**: ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | managedEvents | Array\<[ManagedEvent](#managedevent)> | Yes| Array of events to unsubscribe from.| **Return value** | Type | Description | | ----- | ----------------------------------- | | Promise\ | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200008 | the specified system events enum is invalid. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let events: Array = [adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_ADDED, adminManager.ManagedEvent.MANAGED_EVENT_BUNDLE_REMOVED]; adminManager.unsubscribeManagedEvent(wantTemp, events).then(() => { }).catch((err: BusinessError) => { console.error(`Failed to unsubscribe managed event. Code: ${err.code}, message: ${err.message}`); }) ``` ## adminManager.authorizeAdmin10+ authorizeAdmin(admin: Want, bundleName: string, callback: AsyncCallback<void>): void Authorizes the administrator rights to an application through the specified device administrator application. This API uses an asynchronous callback to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | bundleName | string | Yes| Bundle name of the application to be authorized with the administrator rights.| | callback | AsyncCallback<void> | Yes| Callback invoked to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200002 | the administrator application does not have permission to manage the device. | | 9200009 | authorize permission to the application failed. | **Example** ```ts import Want from '@ohos.app.ability.Want'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let bundleName: string = "com.example.application"; adminManager.authorizeAdmin(wantTemp, bundleName, (err) => { if (err) { console.error(`Failed to authorize permission to the application. Code: ${err.code}, message: ${err.message}`); return; } console.info('Successfully authorized permission to the application'); }); ``` ## adminManager.authorizeAdmin10+ authorizeAdmin(admin: Want, bundleName: string): Promise<void> Authorizes the administrator rights to an application through the specified device administrator application. This API uses a promise to return the result. **Required permissions**: ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. **Model restriction**: This API can be used only in the stage model. **Parameters** | Name | Type | Mandatory | Description | | ----- | ----------------------------------- | ---- | ------- | | admin | [Want](js-apis-app-ability-want.md) | Yes | Device administrator application.| | bundleName | string | Yes| Bundle name of the application to be authorized with the administrator rights.| **Return value** | Type | Description | | ----- | ----------------------------------- | | Promise<void> | Promise that returns no value. If the operation fails, an error object will be thrown.| **Error codes** For details about the error codes, see [Enterprise Device Management Error Codes](../errorcodes/errorcode-enterpriseDeviceManager.md). | ID| Error Message | | ------- | ----------------------------------------------------- | | 9200001 | the application is not an administrator of the device. | | 9200002 | the administrator application does not have permission to manage the device. | | 9200009 | authorize permission to the application failed. | **Example** ```ts import Want from '@ohos.app.ability.Want'; import { BusinessError } from '@ohos.base'; let wantTemp: Want = { bundleName: 'bundleName', abilityName: 'abilityName', }; let bundleName: string = "com.example.application"; adminManager.authorizeAdmin(wantTemp, bundleName).then(() => { }).catch((err: BusinessError) => { console.error(`Failed to authorize permission to the application. Code: ${err.code}, message: ${err.message}`); }) ``` ## EnterpriseInfo Represents the enterprise information of a device administrator application. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. | Name | Type | Mandatory| Description | | ----------- | --------| ---- | ------------------------------- | | name | string | Yes | Name of the enterprise.| | description | string | Yes | Description of the enterprise.| ## AdminType Enumerates the types of device administrator applications. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. | Name | Value | Description | | ----------------- | ---- | ----- | | ADMIN_TYPE_NORMAL | 0x00 | Common administrator application.| | ADMIN_TYPE_SUPER | 0x01 | Super administrator application.| ## ManagedEvent Enumerates the system management events that can be subscribed to. **System capability**: SystemCapability.Customization.EnterpriseDeviceManager **System API**: This is a system API. | Name | Value | Description | | -------------------------- | ---- | ------------- | | MANAGED_EVENT_BUNDLE_ADDED | 0 | Application installed.| | MANAGED_EVENT_BUNDLE_REMOVED | 1 | Application uninstalled.| | MANAGED_EVENT_APP_START10+ | 2 | Application started.| | MANAGED_EVENT_APP_STOP10+ | 3 | Application stopped.| | MANAGED_EVENT_SYSTEM_UPDATE11+ | 4 | System updated.|