SDK接入
前提条件
已在营销引擎云码渠道平台注册账号,获取渠道ID, 请参考如何获取正式渠道ID。
已在营销引擎云码渠道平台已创建媒体,获取媒体ID,请参考如何获取正式媒体ID。
开发测试期间,可以使用测试用配置数据,请参考营销引擎云码测试用配置数据。
使用限制
仅支持Android 4.1及以上版本。
仅支持arm64-v8a/armeabi/armeabi-v7a/x86架构。
样例代码
营销引擎云码Android SDK接入工程样例请参见:下载地址。
操作步骤
1. Maven仓库、依赖配置
添加阿里云Maven仓库到项目build.gradle。
allprojects {
repositories {
// 添加阿里云maven仓库
maven {
url 'https://maven.aliyun.com/repository/public/'
}
// 省略其它maven仓库配置
}
}
添加营销引擎云码SDK依赖到应用build.gradle。
dependencies {
//添加营销引擎云码SDK依赖。x.x.x 是版本号,需要替换为最新版本,切勿使用"+"号等动态版本号形式
implementation 'com.aliyun.ams:alicloud-android-cloudcode:x.x.x'
// 省略其它依赖配置
}
2. 初始化配置
推荐在application的onCreate中,执行SDK初始化代码。有需要也可以在其他地方初始化,但是需要保证执行初始化之后,再调用其他API方法,否则无法正常获取广告。
在开发测试期间, 可以在application的onCreate中修改日志级别,方便定位问题。
为了提高广告推荐的精准度,建议在初始化之前注入用户设备的OAID
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// 用户签署隐私协议之后,
// 注入用户设备OAID
CloudCodeInitializer.setOAID("用户设备oaid");
// 初始化SDK
CloudCodeInitializer.init(this, "使用渠道ID替换此处", "使用媒体ID替换此处");
// 设置日志输出级别为debug
CloudCodeLog.setLevel(LogLevel.DEBUG);
}
}
说明
渠道ID和媒体ID分为正式ID和测试ID,如果应用在开发和测试期间,请先使用测试ID,等产品正式上线发布后再使用正式ID。
SDK初始化需要在用户签署隐私协议之后调用
SDK需要用户授权READ_PHONE_STATE权限,媒体可以合适的时机向用户申请
3. 混淆配置
您需要在应用的混淆配置中添加如下配置:
-keep class com.alibaba.sdk.android.** {*;}
-keep class io.vov.** {*;}
-keep class com.UCMobile.Apollo.** {*;}