Tổng quan

Thu thập Mã định danh Thiết bị Ẩn danh Mở của Android (OAID) để phân bổ lượt cài đặt từ các cửa hàng ứng dụng Android của bên thứ ba.

OAID là mã định danh duy nhất mà người dùng có thể đặt lại cho thiết bị Android. Mã này được Liên minh Bảo mật Di động (MSA), Viện Nghiên cứu Thông tin và Truyền thông Trung Quốc và các nhà sản xuất thiết bị giới thiệu như một giải pháp bảo vệ quyền riêng tư thay thế được cho các mã định danh thiết bị không thể đặt lại như IMEI.

Tích hợp

Yêu cầu SDK AppsFlyer V5.4.0 trở lên

Tích hợp OAID bao gồm 3 bước:

  • Integrating the AppsFlyer SDK in the build.gradle file of your project
  • Integrating the AppsFlyer OAID plugin module in the build.gradle file of your project
dependencies {
  implementation 'com.appsflyer:af-android-sdk:6.9.4'
  implementation 'com.appsflyer:oaid:6.9.0'
}
  • Integrating an SDK to generate and provide the OAID (either the MSA SDK or Huawei HMS SDK)
  • Add the ProGuard rules to protect the necessary classes and interfaces from the MSA and various device manufacturers.

Lưu ý:

  • Đối với các ứng dụng dự kiến sẽ được sử dụng ở Trung Quốc thì phải sử dụng SDK MSA.
  • Đối với các ứng dụng dự kiến sẽ được sử dụng khắp toàn cầu trên các thiết bị Huawei thì nên sử dụng thư viện Huawei HMS.

MSA SDK integration

Để tích hợp SDK MSA:

  1. Nhận từ nhà tiếp thị: Tệp tin SDK MSA (aar) và chứng chỉ cần được tích hợp vào ứng dụng.
    1. Sao chép SDK MSA (aar) trong thư mục libs.
    2. Sao chép và dán supplierconfig.json trong thư mục tài sản của dự án và thực hiện các thay đổi cần thiết, chẳng hạn như cập nhật appid của ứng dụng của bạn trong mỗi cửa hàng.
    3. Sao chép và dán tệp tin chứng chỉ (tên gói.cert.pem) trong thư mục tài sản của dự án.
    4. Xem hướng dẫn đầy đủ trên trang web của MSA
  2. Cập nhật tệp tin build.gradle của dự án của bạn như sau:
implementation 'com.appsflyer:af-android-sdk:6.9.4'
implementation 'com.appsflyer:oaid:6.9.0'
implementation files('libs/oaid_sdk_2.0.0.aar')

Huawei HMS SDK integration

Để tích hợp Huawei SDK HMS:

  1. Thêm kho lưu trữ maven Huawei như sau:
repositories {
  maven {
      url "https://developer.huawei.com/repo/"
  }
}
  1. Cập nhật tệp tin build.gradle của ứng dụng của bạn như sau:
dependencies {
  implementation 'com.appsflyer:af-android-sdk:6.9.4'
  implementation 'com.appsflyer:oaid:6.9.0'
  implementation 'com.huawei.hms:ads-identifier:3.4.56.300'
}

ProGuard rules update (when using ProGuard)

Protect the necessary classes and interfaces from MSA and various device manufacturers.

Add the following code to your proguard-rules.pro file:

# sdk
-keep class com.bun.miitmdid.** { *; }
-keep interface com.bun.supplier.** { *; }
# asus
-keep class com.asus.msa.SupplementaryDID.** { *; }
-keep class com.asus.msa.sdid.** { *; }
# freeme
-keep class com.android.creator.** { *; }
-keep class com.android.msasdk.** { *; }
# huawei
-keep class com.huawei.hms.ads.** { *; }
-keep interface com.huawei.hms.ads.** {*; }
# lenovo
-keep class com.zui.deviceidservice.** { *; }
-keep class com.zui.opendeviceidlibrary.** { *; }
# meizu
-keep class com.meizu.flyme.openidsdk.** { *; }
# nubia
-keep class com.bun.miitmdid.provider.nubia.NubiaIdentityImpl
{ *; }
# oppo
-keep class com.heytap.openid.** { *; }
# samsung
-keep class com.samsung.android.deviceidservice.** { *; }
# vivo
-keep class com.vivo.identifier.** { *; }
# xiaomi
-keep class com.bun.miitmdid.provider.xiaomi.IdentifierManager
{ *; }
# zte
-keep class com.bun.lib.** { *; }
# coolpad
-keep class com.coolpad.deviceidsupport.** { *; }

Thông tin bổ sung

Opting out of OAID collection

Để từ chối thu thập OAID, hãy sử dụng một trong các API sau:

AppsFlyerlib.setCollectOaid(false);
AppsFlyerlib.setDisableAdvertisingIdentifiers(true);

Setting OAID manually

Để đặt OAID vào SDK AppsFlyer theo cách thủ công:

AppsFlyerlib.setOaidData(oaid);