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).
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.
|OS Version||API Level||OAID||IMEI/MEID||MAC address||Android ID|
|Pre-version 8.0||Pre-Level 26||gradual migration||✔(with permission)||✔||✔|
|Version 8.0, 8.1, 9.0||Level 26 to 28||gradual migration||✔ (with permission)||✘||✘|
|Version 10||Level 29||✔||✘||✘||✘|
To use OAID for tracking Android devices that do not have access to GPS, carry out the following steps:
- Add the OAID plugin to your app.
- Add the MSA SDK to your app.
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.
Configure Proguard settings.
Start using the plugin.
For more information about each of these steps, see OAID plugin integration.
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:
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.)
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.
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: