1# @ohos.identifier.oaid (广告标识服务) 2 3本模块提供开放匿名设备标识符(Open Anonymous Device Identifier, OAID,以下简称OAID)的获取能力。 4 5> **说明:**<br/> 6> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。<br/> 7> 使用获取开放匿名设备标识符接口,需[向用户申请授权](../../security/AccessToken/request-user-authorization.md):ohos.permission.APP_TRACKING_CONSENT。 8 9## 导入模块 10 11```ts 12import { identifier } from '@kit.AdsKit'; 13``` 14 15## identifier.getOAID 16 17getOAID(): Promise<string> 18 19获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID),使用Promise异步返回。 20 21**需要权限:** ohos.permission.APP_TRACKING_CONSENT 22 23**系统能力:** SystemCapability.Advertising.OAID 24 25**返回值:** 26 27| 类型 | 说明 | 28|-----------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| 29| Promise<string> | Promise对象。返回开放匿名设备标识符(Open Anonymous Device Identifier, OAID)。<br/>1.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“允许”,则返回OAID。<br/>2.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“禁止”,则返回00000000-0000-0000-0000-000000000000。<br/>3.如应用未配置ohos.permission.APP_TRACKING_CONSENT权限,则返回00000000-0000-0000-0000-000000000000。 | 30 31**错误码:** 32 33以下错误码的详细介绍请参见[广告标识服务错误码参考](errorcode-oaid.md)。 34 35| 错误码ID | 错误信息 | 36|----------|----------------------------------| 37| 17300001 | System internal error. | 38 39**示例:** 40 41```ts 42import { identifier } from '@kit.AdsKit'; 43import { BusinessError } from '@kit.BasicServicesKit'; 44import { hilog } from '@kit.PerformanceAnalysisKit'; 45 46identifier.getOAID().then((data) => { 47 const oaid: string = data; 48 hilog.info(0x0000, 'testTag', `Succeed in getting oaid. Oaid is ${oaid}`); 49}).catch((err: BusinessError) => { 50 hilog.error(0x0000, 'testTag', `Fail to get oaid. Code is ${err.code}, message is ${err.message}`); 51}) 52``` 53 54## identifier.getOAID 55 56getOAID(callback: AsyncCallback<string>): void 57 58获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID),使用callback异步回调。 59 60**需要权限:** ohos.permission.APP_TRACKING_CONSENT 61 62**系统能力:** SystemCapability.Advertising.OAID 63 64**参数:** 65 66| 参数名 | 类型 | 必填 | 说明 | 67|----------|-----------------------------|-----|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| 68| callback | AsyncCallback<string> | 是 | 异步获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID)的回调。<br/>1.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“允许”,则返回OAID。<br/>2.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“禁止”,则返回00000000-0000-0000-0000-000000000000。<br/>3.如应用未配置ohos.permission.APP_TRACKING_CONSENT权限,则返回00000000-0000-0000-0000-000000000000。 | 69 70**错误码:** 71 72以下错误码的详细介绍请参见[广告标识服务错误码参考](errorcode-oaid.md)。 73 74| 错误码ID | 错误信息 | 75|----------|----------------------------------| 76| 17300001 | System internal error. | 77 78**示例:** 79 80```ts 81import { identifier } from '@kit.AdsKit'; 82import { BusinessError } from '@kit.BasicServicesKit'; 83import { hilog } from '@kit.PerformanceAnalysisKit'; 84 85identifier.getOAID((err: BusinessError, data: string) => { 86 if (err.code) { 87 hilog.error(0x0000, 'testTag', `Fail to get oaid. Code is ${err.code}, message is ${err.message}`); 88 } else { 89 const oaid: string = data; 90 hilog.info(0x0000, 'testTag', `Succeed in getting oaid. Oaid is ${oaid}`); 91 } 92}); 93```