广告平台对接Android集成指引
注意:此文档是针对使用了 渠道统计 功能中的 广告平台渠道 报表统计功能而提供的补充性文档
- 首次集成SDK的,先按照Android集成指南或者 后台【应用集成】->【Android集成】文档集成完毕
- 进入应用后台,找到:“android集成”->“android应用配置”->“广告平台对接”,勾选并保存
一、设备唯一标识码获取
针对广告平台,为了精准地匹配到渠道,需要获取设备唯一标识码(IMEI),因此需要做额外的权限申请。
1、权限声明
在AndroidManifest.xml
文件中添加权限声明
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
2、请求权限,确保初始化在权限请求之后调用
内部ApiinitWithPermission
已废弃,请自行处理权限申请
2.1、以下示例代码需要依赖support-v7
包,如项目中已经导入依赖,请忽略
在build.gradle
中导入依赖
dependencies {
implementation "com.android.support:appcompat-v7:28.0.0"
}
2.2、删除掉原有的初始化代码,在请求权限之后初始化
示例:在应用启动页申请权限并初始化,确保后续操作在初始化之后
public class SplashActivity extends AppCompatActivity {
Configuration configuration = new Configuration.Builder().adEnabled(true).build();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 999);
} else {
OpenInstall.init(getApplicationContext(), configuration);
}
} else {
OpenInstall.init(getApplicationContext(), configuration);
}
}
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == 999) {
OpenInstall.init(getApplicationContext(), configuration);
}
}
}
二、获取OAID
1、使用 2.8.3 及以上版本SDK,您不需要做任何项目配置,仅需设置允许 SDK 获取广告追踪相关参数
Configuration configuration = new Configuration.Builder().adEnabled(true).build();
OpenInstall.init(activity, configuration);
2、开发者也可以自行获取 OAID,并传递给 OpenInstall SDK 。示例如下:
/**
* adEnabled 为 true 表示 SDK 需要获取广告追踪相关参数
* f32a09dc-3312-d43e-6583-62fac13f33ae 是通过移动安全联盟获取到的 oaid
*/
Configuration configuration = new Configuration.Builder().adEnabled(true)
.oaid("f32a09dc-3312-d43e-6583-62fac13f33ae").build();
OpenInstall.init(activity, configuration);
三、Google 广告 ID 获取
1、获取 Google Advertising ID,您不需要做任何项目配置,仅需设置允许 SDK 获取广告追踪相关参数
Configuration configuration = new Configuration.Builder().adEnabled(true).build();
OpenInstall.init(activity, configuration);
2、开发者也可以自行获取 advertisingId ,并传递给 OpenInstall SDK 。示例如下:
/**
* adEnabled 为 true 表示 SDK 需要获取广告追踪相关参数
* e78a09dc-2207-4c1b-9879-1fc4de1f22f4 是通过 google api 获取到的 advertisingId
*/
Configuration configuration = new Configuration.Builder().adEnabled(true)
.gaid("e78a09dc-2207-4c1b-9879-1fc4de1f22f4").build();
OpenInstall.init(this, configuration);
四、上传APK包,检查配置
广告代码集成完毕后,需要导出安装包上传openinstall后台,openinstall会自动检查应用所有的配置工作
“权限列表”红色提示表明,应用当前上传的APK未声明必要的权限