SDK接入配置
1. 准备工作
- 选择需要接入的第三方广告网络,创建应用并拿到聚合SDK所需的参数,详细信息可查看【第三方广告网络操作指南】
- 解压我们提供的压缩包,把*.aar放入app的libs工程中,并添加所需的其他配置项
- SDK 支持 Android API Level 18+
2. 示例Demo
3. 集成步骤
3.1 添加ToBid SDK 依赖
groovy
dependencies {
//ToBidSdk-ZIP包内Core目录下的aar文件放入项目libs中
implementation fileTree(include: ['*.aar'], dir: 'libs')
}
加入 AndroidX 或者 Android Support V4 依赖支持库(二选一)
groovy
dependencies {
//AndroidX
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
//Android support v4
implementation 'com.android.support:support-v4:23.0.+'
}
3.2 更新 AndroidManifest.xml
权限声明
xml
<!--联⽹权限-->
<uses-permission android:name="android.permission.INTERNET" />
<!--检测当前⽹络状态是2G、3G、4G还是WiFi-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--获取设备标识IMEI。⽤于标识⽤户-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--读写存储权限-->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:node="replace" />
<!--获取MAC地址,⽤于标识⽤户-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--安装应⽤权限-->
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
<!--定位权限,不强制要求-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
3.3 混淆配置
java
# 不优化输入的类文件
-dontoptimize
#忽略警告
-ignorewarnings
# ToBid
-dontwarn com.sigmob.**
-keep class com.sigmob.**{ *;}
-keep interface com.sigmob.**{ *;}
-dontwarn com.czhj.**
-keep class com.czhj.**{ *;}
-keep interface com.czhj.**{ *;}
-keep class com.tan.**{ *;}
-dontwarn com.windmill.**
-keep class com.windmill.**.**{*;}
-keep interface com.windmill.**{ *;}
# miitmdid
-dontwarn com.bun.**
-keep class com.bun.** {*;}
-keep class a.**{*;}
-keep class XI.CA.XI.**{*;}
-keep class XI.K0.XI.**{*;}
-keep class XI.XI.K0.**{*;}
-keep class XI.vs.K0.**{*;}
-keep class XI.xo.XI.XI.**{*;}
-keep class com.asus.msa.SupplementaryDID.**{*;}
-keep class com.asus.msa.sdid.**{*;}
-keep class com.huawei.hms.ads.identifier.**{*;}
-keep class com.samsung.android.deviceidservice.**{*;}
-keep class com.zui.opendeviceidlibrary.**{*;}
-keep class org.json.**{*;}
-keep public class com.netease.nis.sdkwrapper.Utils {public <methods>;}
3.4 资源混淆配置
- 如果您的应⽤启⽤了资源混淆或资源缩减,您需要保留SDK的资源,SDK的资源名都是以tobid_、sig_开头的。您可以在资源混淆配置⽂件添加如下配置:
xml
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@drawable/tobid_*,@layout/tobid_*,@id/tobid_**,@style/tobid_*,@string/tobid_*,@anim/tobid_*, @xml/tobid_*,@color/tobid_*,@attr/tobid_*,@dimen/tobid_*" />
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@drawable/sig_*,@layout/sig_*,@id/sig_**,@style/sig_*,@string/sig_*,@anim/sig_*, @xml/sig*,@color/sig_*,@attr/sig_*,@dimen/sig_*"/>