@ohos.identifier.oaid (OAID)

The OAID module provides APIs for obtaining and resetting Open Anonymous Device Identifiers (OAIDs).

NOTE

The initial APIs of this module are supported since API version 10. Newly added APIs will be marked with a superscript to indicate their earliest API version.

To use the APIs for obtaining OAIDs, you must request the ohos.permission.APP_TRACKING_CONSENT permission.

Modules to Import

import identifier from '@ohos.identifier.oaid';

identifier.getOAID

getOAID(): Promise<string>

Obtains an OAID. This API uses a promise to return the result.

Required permissions: ohos.permission.APP_TRACKING_CONSENT

System capability: SystemCapability.Advertising.OAID

Return value

Type Description
Promise<string> Promise used to return the OAID. If the operation is successful, an OAID is returned. If the operation fails, 00000000-0000 00000000-0000-0000-0000-000000000000 is returned.

Error codes

For details about the following error codes, see OAID Error Codes.

ID Error Message
17300001 System internal error.

Example

import identifier from '@ohos.identifier.oaid';
import hilog from '@ohos.hilog'; 
import { BusinessError } from '@ohos.base';
 
try {  
  identifier.getOAID().then((data) => {
    const oaid: string = data;
    hilog.info(0x0000, 'testTag', '%{public}s', `get oaid by promise success, oaid: ${oaid}`);
  }).catch((err: BusinessError) => {
    hilog.info(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

Obtains an OAID. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.APP_TRACKING_CONSENT

System capability: SystemCapability.Advertising.OAID

Parameters

Name Type Mandatory Description
callback AsyncCallback<string> Yes Callback used to return the OAID. If the operation is successful, an OAID is returned. If the operation fails, 00000000-0000 00000000-0000-0000-0000-000000000000 is returned.

Error codes

For details about the following error codes, see OAID Error Codes.

ID Error Message
17300001 System internal error.

Example

import identifier from '@ohos.identifier.oaid';
import hilog from '@ohos.hilog'; 
import { BusinessError } from '@ohos.base';
 
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', 'get oaid by callback success');
    }
   });
} catch (err) {
  hilog.error(0x0000, 'testTag', '%{public}s', `get oaid by callback catch error: ${err.code} ${err.message}`);
}

identifier.resetOAID

resetOAID(): void

Resets an OAID.

System API: This is a system API.

System capability: SystemCapability.Advertising.OAID

Error codes

For details about the following error codes, see OAID Error Codes.

ID Error Message
17300001 System internal error.

Example

import identifier from '@ohos.identifier.oaid';
import hilog from '@ohos.hilog'; 

try {
  identifier.resetOAID();
} catch (err) {
  hilog.error(0x0000, 'testTag', '%{public}s', `reset oaid catch error: ${err.code} ${err.message}`);
}