@ohos.identifier.oaid (广告标识服务)
本模块提供开放匿名设备标识符(Open Anonymous Device Identifier, OAID,以下简称OAID)的获取能力。
说明: 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 使用获取开放匿名设备标识符接口,需向用户申请授权:ohos.permission.APP_TRACKING_CONSENT
导入模块
import { identifier } from '@kit.AdsKit';
identifier.getOAID
getOAID(): Promise<string>
获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID),使用Promise异步返回。
需要权限: ohos.permission.APP_TRACKING_CONSENT
系统能力: SystemCapability.Advertising.OAID
返回值:
| 类型 | 说明 |
|---|---|
| Promise<string> | Promise对象。返回开放匿名设备标识符(Open Anonymous Device Identifier, OAID)。 1.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“允许”,则返回OAID。 2.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“禁止”,则返回00000000-0000-0000-0000-000000000000。 3.如应用未配置ohos.permission.APP_TRACKING_CONSENT权限,则返回00000000-0000-0000-0000-000000000000。 |
错误码:
以下错误码的详细介绍请参见广告标识服务错误码参考。
| 错误码ID | 错误信息 |
|---|---|
| 17300001 | System internal error. |
示例:
import { identifier } from '@kit.AdsKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';
try {
identifier.getOAID().then((data) => {
const oaid: string = data;
hilog.info(0x0000, 'testTag', '%{public}s', `succeeded in getting oaid by promise, oaid: ${oaid}`);
}).catch((err: BusinessError) => {
hilog.error(0x0000, 'testTag', '%{public}s',
`get oaid by promise failed, code: ${err.code}, message: ${err.message}`);
})
} catch (err) {
hilog.error(0x0000, 'testTag', '%{public}s', `get oaid by promise catch error: ${err.code} ${err.message}`);
}
identifier.getOAID
getOAID(callback: AsyncCallback<string>): void
获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID),使用callback异步回调。
需要权限: ohos.permission.APP_TRACKING_CONSENT
系统能力: SystemCapability.Advertising.OAID
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| callback | AsyncCallback<string> | 是 | 异步获取开放匿名设备标识符(Open Anonymous Device Identifier, OAID)的回调。 1.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“允许”,则返回OAID。 2.如应用已配置ohos.permission.APP_TRACKING_CONSENT权限,且跨应用关联访问权限为“禁止”,则返回00000000-0000-0000-0000-000000000000。 3.如应用未配置ohos.permission.APP_TRACKING_CONSENT权限,则返回00000000-0000-0000-0000-000000000000。 |
错误码:
以下错误码的详细介绍请参见广告标识服务错误码参考。
| 错误码ID | 错误信息 |
|---|---|
| 17300001 | System internal error. |
示例:
import { identifier } from '@kit.AdsKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';
try {
identifier.getOAID((err: BusinessError, data: string) => {
if (err.code) {
hilog.error(0x0000, 'testTag', '%{public}s', `get oaid by callback failed, error: ${err.code} ${err.message}`);
} else {
const oaid: string = data;
hilog.info(0x0000, 'testTag', '%{public}s', 'succeed in getting oaid by callback');
}
});
} catch (err) {
hilog.error(0x0000, 'testTag', '%{public}s', `get oaid by callback catch error: ${err.code} ${err.message}`);
}