English

Tracking Android devices without access to Google Play Services

This article describes how to track Android devices that do not have access to Google Play Services (GPS).

Overview

China does not allow Google Play Services to be included on Android devices. Similarly, due to U.S. law, Google Play Services cannot be included on Huawei devices worldwide.

When GPS is not included on a device, there is no Google Play Store Advertising ID (gps_adid) available. Instead, the device must use an alternate identifier for attribution. In this case, the main device ID that can be used is the Open Anonymous ID (OAID). OAID is an advertising ID that the MSA (Mobile Security Alliance) announced all Chinese-manufactured devices should provide. You can use it to attribute and track Android devices in many markets where GPS is not available.

Before OAID was in use, the main device ID for attribution was International Mobile Equipment Identity (IMEI) / Mobile Equipment Identifier (MEID). But since these identifiers are permanent, Android version 10 and later limit the ability of apps to read them for privacy considerations. It can still be useful to collect these identifiers for devices running earlier versions of Android.

The following table summarises the tracking options that are available for various versions of Android devices that do not have access to GPS. The table highlights the fact that newer versions of Android are becoming increasingly strict with using non-resettable device IDs such as MAC address and IMEI/MEID for tracking purposes.

AndroidTracking options
OS VersionAPI LevelOAID IMEI/MEIDMAC addressAndroid ID
Pre-version 8.0Pre-Level 26gradual migration✔(with permission)
Version 8.0, 8.1, 9.0Level 26 to 28gradual migration✔ (with permission)
Version 10Level 29

Tracking using OAID

To use OAID for tracking Android devices that do not have access to GPS, carry out the following steps:

  1. Add the OAID plugin to your app.
Note:
You need to implement the Adjust SDK OAID plugin for both HUAWEI and non-HUAWEI devices. Ensure the OAID plugin is integrated within the Adjust Android SDK (Version 4.18 or later.) For more information, see Adjust SDK OAID plugin.
  1. Add the MSA SDK to your app.
Note:
Non-HUAWEI devices require the MSA SDK to make the OAID available. You need to apply for access to the MSA SDK. For more information, see the MSA SDK website.

HUAWEI devices do not require the MSA SDK, since they already include the HUAWEI Mobile Services (HMS) API. The HMS API makes the OAID available. Adjust has implemented the HUAWEI HMS API, which allows Adjust to collect OAID on HUAWEI Devices. So even if the MSA SDK is not implemented, we can still track OAID on HUAWEI devices.
  1. Configure Proguard settings.

  2. Start using the plugin.

For more information about each of these steps, see OAID plugin integration.

OAID format

The OAID format is generally the same as the advertising ID used by Apple or Google, so when we look at the OAID, it will look familiar as an advertising ID. Here is an example:

ed799bac-2537-6122-377a-edebce5db5a5

The ID is an example of the Huawei implementation of OAID. Huawei does not include a version number as defined in the UUID standard. So, it is similar but not exactly the same format as the UUID standard. (For more information, see the HUAWEI developer site.)

Tracking using IMEI/MEID

As OAID is not supported on every device, IMEI tracking must be applied to your app from the Adjust dashboard, and you also need to implement the Adjust SDK IMEI plugin.

Important:
IMEI / MEID tracking information must only be collected from devices in China. Do not integrate the IMEI plugin to non-Chinese app stores.

To ensure that your Adjust SDK supports IMEI tracking, you need to reach out to your Account Manager to whitelist your account for IMEI and to sign terms and conditions when setting up your app from the dashboard.

For more information, see: