1# @ohos.enterprise.locationManager(位置服务管理) 2 3本模块提供设备位置服务策略管理的能力,包括设置和查询位置服务开关策略等。 4 5> **说明:** 6> 7> 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> 本模块接口仅可在Stage模型下使用。 10> 11> 本模块接口仅对[设备管理应用](../../mdm/mdm-kit-guide.md#功能介绍)开放,需将设备管理应用激活后调用,实现相应功能。 12> 13 14## 导入模块 15 16```ts 17import { locationManager } from '@kit.MDMKit'; 18``` 19 20## locationManager.setLocationPolicy 21 22setLocationPolicy(admin: Want, policy: LocationPolicy): void 23 24以同步方法设置位置服务管理策略。失败抛出对应异常。 25 26**需要权限:** ohos.permission.ENTERPRISE_MANAGE_LOCATION 27 28**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 29 30 31**参数:** 32 33| 参数名 | 类型 | 必填 | 说明 | 34| ----- | ----------------------------------- | ---- | ------- | 35| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 设备管理应用。 | 36| policy | [LocationPolicy](#locationpolicy) | 是 | 位置服务策略。<br>- 0:默认策略。<br>- 1:禁用。<br>- 2:强制启用。 | 37 38**错误码**: 39 40以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 41 42| 错误码ID | 错误信息 | 43| ------- | ---------------------------------------------------------------------------- | 44| 9200001 | The application is not an administrator application of the device. | 45| 9200002 | The administrator application does not have permission to manage the device. | 46| 201 | Permission verification failed. The application does not have the permission required to call the API. | 47| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 48 49**示例:** 50 51```ts 52import { Want } from '@kit.AbilityKit'; 53import { locationManager } from '@kit.MDMKit'; 54 55let wantTemp: Want = { 56 bundleName: 'com.example.myapplication', 57 abilityName: 'EntryAbility', 58}; 59 60try { 61 locationManager.setLocationPolicy(wantTemp, locationManager.LocationPolicy.DISALLOW_LOCATION_SERVICE); 62 console.info(`Succeeded in setting location patch tag.`); 63} catch(err) { 64 console.error(`Failed to get location patch tag. Code: ${err.code}, message: ${err.message}`); 65} 66``` 67## locationManager.getLocationPolicy 68 69getLocationPolicy(admin: Want): LocationPolicy 70 71以同步方法查询位置服务策略。成功返回位置服务策略,失败抛出对应异常。 72 73**需要权限:** ohos.permission.ENTERPRISE_MANAGE_LOCATION 74 75**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 76 77 78**参数:** 79 80| 参数名 | 类型 | 必填 | 说明 | 81| -------- | ---------------------------------------- | ---- | ------------------------------- | 82| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 设备管理应用。 | 83 84**返回值:** 85 86| 类型 | 说明 | 87| --------------------------------- | ---------------------------------------------------- | 88| [LocationPolicy](#locationpolicy) | 位置服务策略枚举值 0:默认策略 1:禁用 2:强制启用。 | 89 90**错误码**: 91 92以下错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 93 94| 错误码ID | 错误信息 | 95| ------- | ---------------------------------------------------------------------------- | 96| 9200001 | The application is not an administrator application of the device. | 97| 9200002 | The administrator application does not have permission to manage the device. | 98| 201 | Permission verification failed. The application does not have the permission required to call the API. | 99| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 100 101**示例:** 102 103```ts 104import { Want } from '@kit.AbilityKit'; 105import { locationManager } from '@kit.MDMKit'; 106let wantTemp: Want = { 107 bundleName: 'com.example.myapplication', 108 abilityName: 'EntryAbility', 109}; 110 111try { 112 let result: locationManager.LocationPolicy = locationManager.getLocationPolicy(wantTemp); 113 console.info(`Succeeded in getting location policy. policy: ${result}`); 114} catch(err) { 115 console.error(`Failed to get device encryption status. Code: ${err.code}, message: ${err.message}`); 116} 117``` 118 119## LocationPolicy 120 121位置服务策略值。 122 123**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 124 125 126**模型约束:** 此接口仅可在Stage模型下使用 127 128| 名称 | 值 | 说明 | 129| ----------------------------| ----| ------------------------------- | 130| DEFAULT_LOCATION_SERVICE | 0 | 默认策略。 | 131| DISALLOW_LOCATION_SERVICE | 1 | 禁用位置服务策略。 | 132| FORCE_OPEN_LOCATION_SERVICE | 2 | 强制开启位置服务策略。 | 133 134