初始化定位 SDK
1. 为了适配合规要求,调用 SDK 的第一个接口应该是隐私政策合规接口。
TencentLocationSDK.setPrivacyPolicyAgreement(true)
2. 只有在用户同意隐私政策后, 再使用 TencentLocationSDK
的 init
方法初始化,建议在 EntryAbility
的 onCreate
方法中设置。
export default class EntryAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
TencentLocationSDK.init(this.context, 'YourApiKey', 'YourDeviceID')
}
}
- YourApiKey:接入指南中获取的 ApiKey。
- YourDeviceID:开发者自行设置,一般为UUID,每个用户单独用一个,不可太短,用来排查定位问题。
3. 初始化完成后, 再获取 TencentLocationManager
的实例。
TencentLocationManager.getInstance()
4. 在使用具体功能前, 需要向用户请求对应的权限。
try {
const permissions: Array<Permissions> = ['ohos.permission.APPROXIMATELY_LOCATION', 'ohos.permission.LOCATION'];
const atManager = abilityAccessCtrl.createAtManager()
atManager.requestPermissionsFromUser(this.context, permissions).then((data) => {
console.info(TAG, `requestPermissionsFromUser result: ${JSON.stringify(data)}`)
}).catch((error: BusinessError) => {
console.error(TAG, `requestPermissionsFromUser failed: ${JSON.stringify(error)}`)
})
} catch(error) {
console.error(TAG, `catched error: ${JSON.stringify(error)}`)
}
这篇文章对您解决问题是否有帮助?
已解决
未解决