Android 准备工作
开发环境要求
- Android Studio:推荐使用最新版本
- Android SDK:Android 8.0(API Level 26)或更高版本
- Java:Java 11 或更高版本
- Kotlin:Kotlin 1.8 或更高版本
- Gradle:推荐8.0 +
项目配置
1. 添加依赖
在您的应用级 build.gradle 文件中添加优聚智汇广告 SDK 依赖:
添加依赖
方式一:Gradle远程依赖(推荐)
gradle//在项目的 `build.gradle` 文件中添加仓库 repositories { maven { url = uri("https://maven.aliyun.com/repository/google") } maven { url = uri("https://maven.aliyun.com/repository/central") } // 穿山甲广告仓库 maven { url = uri("https://artifact.bytedance.com/repository/pangle") } // 华为官方广告标识服务SDK maven { url = uri("https://developer.huawei.com/repo") } // 荣耀官方广告标识服务SDK maven { url = uri("https://developer.hihonor.com/repo") } google() gradlePluginPortal() mavenCentral() }gradle// 在应用级build.gradle中添加依赖 dependencies { // 优聚智汇核心 SDK implementation "com.ujusdk:uju-ad-sdk:3.1.15" // 华为、荣耀获取OAID,可有效提高Ecpm,建议引入 implementation("com.huawei.hms:ads-identifier:3.4.62.300") implementation("com.hihonor.mcs:ads-identifier:1.0.2.301") // 穿山甲适配器 implementation("com.ujusdk:uju-csj-adapter:7.4.1.5") // 腾讯优量汇适配器 implementation("com.ujusdk:uju-ylh-adapter:4.671.1542") // 百度联盟适配器 implementation("com.ujusdk:uju-bd-adapter:9.43.3") // 快手适配器 implementation("com.ujusdk:uju-ks-adapter:4.11.30.3") // 引入对应版本穿山甲SDK implementation("com.pangle_beta.cn:mediation-sdk:7.4.1.4") // 引入对应版本腾讯优量汇SDK implementation("com.qq.e.union:union:4.671.1541") // 引入对应版本百度联盟SDK implementation("com.ujusdk:uju-bd-adapter:9.43.2") // 引入对应版本快手联盟SDK(注意,快手只能本地aar包方式引入) }方式二:本地AAR文件引入点击下载
gradle// 在应用级build.gradle中添加本地依赖 dependencies { // 核心 + 多个适配器 implementation files("libs/uju-ad-sdk-version.aar") // 添加需要的第三方平台适配器aar implementation files("libs/uju-csj-adapter-version.aar") implementation files("libs/uju-ylh-adapter-version.aar") implementation files("libs/uju-bd-adapter-version.aar") implementation files("libs/uju-ks-adapter-version.aar") // 引入对应版本穿山甲SDK implementation("com.pangle_beta.cn:mediation-sdk:version") // 引入对应版本腾讯优量汇SDK implementation("com.qq.e.union:union:version") // 引入对应版本百度联盟SDK implementation("com.ujusdk:uju-bd-adapter:version") // 引入对应版本快手联盟SDK(注意,快手只能本地aar包方式引入) }
2. 配置权限
在 AndroidManifest.xml 文件中添加必要的权限:
xml
<!-- 基本网络权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 可选权限 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />3. 混淆配置
gradle
# OAID相关混淆
-keep class repeackage.com.uodis.opendevice.aidl.** { *; }
-keep interface repeackage.com.uodis.opendevice.aidl.** { *; }
-keep class repeackage.com.asus.msa.SupplementaryDID.** { *; }
-keep interface repeackage.com.asus.msa.SupplementaryDID.** { *; }
-keep class repeackage.com.bun.lib.** { *; }
-keep interface repeackage.com.bun.lib.** { *; }
-keep class repeackage.com.heytap.openid.** { *; }
-keep interface repeackage.com.heytap.openid.** { *; }
-keep class repeackage.com.samsung.android.deviceidservice.** { *; }
-keep interface repeackage.com.samsung.android.deviceidservice.** { *; }
-keep class repeackage.com.zui.deviceidservice.** { *; }
-keep interface repeackage.com.zui.deviceidservice.** { *; }
-keep class repeackage.com.coolpad.deviceidsupport.** { *; }
-keep interface repeackage.com.coolpad.deviceidsupport.** { *; }
-keep class repeackage.com.android.creator.** { *; }
-keep interface repeackage.com.android.creator.** { *; }
-keep class repeackage.com.google.android.gms.ads.identifier.internal.** { *; }
-keep interface repeackage.com.google.android.gms.ads.identifier.internal.* { *; }
-keep class repeackage.com.oplus.stdid.** {*; }
-keep interface repeackage.com.oplus.stdid.** {*; }
-keep class com.huawei.hms.ads.** {*; }
-keep interface com.huawei.hms.ads.** {*; }
-keep class com.hihonor.ads.** {*; }
-keep interface com.hihonor.ads.** {*; }
-keep class repeackage.com.qiku.id.** { *; }
-keep interface repeackage.com.qiku.id.** { *; }
# Gromore聚合混淆,不接入gromore可以不引入
-keep class bykvm*.**
-keep class com.bytedance.msdk.adapter.**{ public *; }
-keep class com.bytedance.msdk.api.** {
public *;
}
# baidu sdk 不接入baidu sdk可以不引入
-ignorewarnings
-dontwarn com.baidu.mobads.sdk.api.**
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class com.baidu.mobads.** { *; }
-keep class com.style.widget.** {*;}
-keep class com.component.** {*;}
-keep class com.baidu.ad.magic.flute.** {*;}
-keep class com.baidu.mobstat.forbes.** {*;}
#ks 不接入ks sdk可以不引入
-keep class org.chromium.** {*;}
-keep class org.chromium.** { *; }
-keep class aegon.chrome.** { *; }
-keep class com.kwai.**{ *; }
-dontwarn com.kwai.**
-dontwarn com.kwad.**
-dontwarn com.ksad.**
-dontwarn aegon.chrome.**4. 第三方广告网络特殊权限、混淆配置
开发者按需选择第三方广告网络,而且必须要关注第三方广告网络的特殊说明:
第三方广告网络快捷入口:
下一步
完成准备工作后,您可以继续进行:
