在安卓SDK中集成OAID

概览:针对上架三方商店的安卓应用,可以通过 AppsFlyer SDK 收集 Android OAID 进行归因。

收集OAID

AppsFlyer的SDK支持多种OAID的收集方法, 使用哪种方法取决于以下因素:

  • 设备型号和操作系统
  • AppsFlyer SDK 版本

收集方法

请使用setCollectOaid方法:收集 OAID:

  • AppsFlyer SDK 会从设备操作系统收集 OAID
  • SDK V6.2.3+ 版本中,如果应用添加了 OAID dependencies,AppsFlyer SDK 会尝试直接收集 OAID
  • 对于较早的SDK版本,仍需手动添加该方法

收集OAID(中国)

基于SDK版本选择对应的上报方法,开发者必须要将厂商的独立JAR文件添加在app,或将其添加到AppsFlyer的OAID SDK。 

  1. 下载MSA 联盟 SDK
  2. 添加OAID dependencies,必须在app层级build.gradle文件夹中支持厂商的独立JAR文件:
    • implementation 'com.appsflyer:af-android-sdk:6.2.3@aar'
    • 添加 'com.appsflyer:oaid:6.2.4'
    • implementation files('libs/oaid_sdk_1.0.23.aar')

使用V5.4.0+ AppsFlyer SDK收集OAID:

添加 OAID dependencies后,SDK会默认收集 OAID。

使用AppsFlyer SDK V5.2.0或V5.3.0收集OAID:

startTracking()之前调用 setCollectOaid()

具体代码参考 AppsFlyerLib.getInstance().setCollectOaid(true);

收集OAID(海外)

当您的应用在海外上架时,无需添加MSA SDK。对应的,请使用华为OAID SDK收集OAID。

1. 在项目build.gradle文件中添加以下内容:

allprojects {
  repositories {
  // ...
    maven { url 'https://developer.huawei.com/repo/' }
mavenCentral() } }

关于“mavenCentral”的更多信息,请参阅我们的Android SDK 开发者文档。

2.在app层级的build.gradle文件中,添加以下dependencies (必须支持厂商的standalone JAR文件):

implementation 'com.appsflyer:af-android-sdk:6.2.3@aar'
implementation 'com.appsflyer:oaid:6.2.4'
implementation 'com.huawei.hms:ads-identifier:3.4.39.302'

注释:

  • 推荐的com.huawei.hms:ads-identifier版本是 3.4.39.302+
  • 进行下一步之前,请确保所有 OAID dependencies都正确添加到app层级 build.gradle 文件中。

3.根据Android SDK版本收集OAID。

使用AppsFlyer SDK V6.2.3版本收集OAID(最佳实践):

SDK默认自动收集OAID。(前提是完成上述步骤)

使用V5.4.0+ AppsFlyer SDK收集OAID:

'com.huawei.hms:ads-identifier:3.4.39.302'版本为3.4.39.3023.4.30.300 以下(不包含3.4.30.300 ),SDK会自动收集OAID。

使用AppsFlyer SDK V5.2.0或V5.3.0收集OAID:

startTracking()之前调用 setCollectOaid()

具体代码参考 AppsFlyerLib.getInstance().setCollectOaid(true);并且'com.huawei.hms:ads-identifier:3.4.39.302'版本应该是3.4.39.3023.4.30.300 以下(不包含3.4.30.300 )

退出收集 OAID

选择退出(opt-out)收集OAID:

在调用startTracking()之前调用 setCollectOaid(false), 在代码中调用 
AppsFlyerLib.getInstance().setCollectOaid(false);

附加信息

支持设备

支持设备

使用 AppsFLyer SDK V5.1.0以及之后带有OAID module的AppsFlyer SDK版本

支持的制造商版本
华为
  • EMUI: V9.0+
  • HMS: V2.62+
小米 MIUI 10.2+
Vivo FuntouchOS 9+
OPPO Color OS 7.0+
联想 ZUI 11.4+
Samsung, Meizu, Nubia, ZTE, ASUS, OnePlus, Freeme OS, Ssui OS Android 10+