初始化SDK
接入事例
//setp1.1:聚合SDK初始化
val initSDKConfig: InitSDKConfig = InitSDKConfig.Builder()
.AppId("****")//聚合后台申请的appid
.appName("广告demo")//后台注册的应用名称
//.setChannel("demo")//渠道,方便后续统计,可以不填
// 竖屏 - AdConfig.REWARD_VIDEO_SCREEN_VERTICAL
// 横屏 - AdConfig.REWARD_VIDEO_SCREEN_x`HORIZONTAL
.RewardVideoScreenDirection(AdConfig.REWARD_VIDEO_SCREEN_VERTICAL) // 设置激励视频播放页面的横竖屏
.debug(true)//上线需要设置false
.setDeniedUpDeviceInfo(object : DeniedUpDeviceInfo() {
/**
* 是否允许SDK主动使用地理位置信息
* */
override fun isCanUseLocation(): Boolean {
return super.isCanUseLocation()
}
/**
* 获取应用列表
* */
override fun appList(): Boolean {
return super.appList()
}
/**
* 是否允许SDK主动使用手机硬件参数
* */
override fun isCanUsePhoneState(): Boolean {
return super.isCanUsePhoneState()
}
/**
* 当isCanUsePhoneState=false时,可传入IME信息
* */
override fun getDevImei(): String? {
return super.getDevImei()
}
/**
* 是否允许SDK主动使用ACCESS_WIFI_STATE权限
* */
override fun isCanUseWifiState(): Boolean {
return super.isCanUseWifiState()
}
/**
* 当isCanUseWifiState=false时,可传入Mac地址信息
* */
override fun getMacAddress(): String? {
return super.getMacAddress()
}
/**
* 是否允许SDK主动使用WRITE_EXTERNAL_STORAGE权限
* */
override fun isCanUseWriteExternal(): Boolean {
return super.isCanUseWriteExternal()
}
/**
* 开发者可以传入OAID
* */
override fun getDevOaid(): String? {
return super.getDevOaid()
}
/**
* 是否能获取android ID
* */
override fun isCanUseAndroidId(): Boolean {
return super.isCanUseAndroidId()
}
/**
* 开发者可以传入android ID
* */
override fun getAndroidId(): String? {
return super.getAndroidId()
}
/**
* 是否允许SDK在申明和授权了的情况下使用录音权限
* */
override fun isCanUsePermissionRecordAudio(): Boolean {
return super.isCanUsePermissionRecordAudio()
}
})
.setOaidProvider { "test_oaid" } //传入 OAID 获取器,建议集成 OAID SDK的应用设置
.build()
AdView.initSDK(this, initSDKConfig, object : InitSDKListener {
override fun initializeSucceed() {
//初始化成功
}
override fun initializeFail() {
//初始化失败
}
})
DeniedUpDeviceInfo
隐私设置权限许可setDeniedUpDeviceInfo(object : DeniedUpDeviceInfo())来设置
方法名 | 说明 |
boolean isCanUseLocation() | 是否允许SDK主动使用地理位置信息 |
boolean alist() | 是否允许sdk上报手机app安装列表 |
boolean isCanUsePhoneState() | 是否允许SDK主动使用手机硬件参数 |
String getDevImei() | 当isCanUsePhoneState=false时,可传入IME信息 |
boolean isCanUseWifiState() | 是否允许SDK主动使用ACCESS_WIFI_STATE权限 |
String getMacAddress() | 当isCanUseWifiState=false时,可传入Mac地址信息 |
boolean isCanUseWriteExternal() | 是否允许SDK主动使用WRITE_EXTERNAL_STORAGE权限 |
String getDevOaid() | 开发者可以传入OAID |
boolean isCanUseAndroidId() | 是否能获取android ID |
String getAndroidId() | 开发者可以传入android ID |
boolean isCanUsePermissionRecordAudio() | 是否允许SDK在申明和授权了的情况下使用录音权限 |
SDK初始化说明
注意事项
①初始化在广告请求之前,不然会导致广告无填充。
②只支持在主进程初始化
③默认仅支持初始化SDK一次,多次初始化SDK以第一次初始化为准。
④appId为必填内容,若appid是通过服务端下发的,那么在初始化前需要做不为空的判断。
⑤开发者需确保在success回调之后再去请求广告。
⑥SDK初始化API:该API必须在主线程中调用,SDK会将初始化操作放在子线程执行。
接入事例
class MyApplicatio : Application(){
private val mContext: Context? = null
override fun attachBaseContext(base: Context?) {
super.attachBaseContext(base)
// MultiDex.install(this);
//聚合SDK初始化
val initSDKConfig: InitSDKConfig = InitSDKConfig.Builder()
.AppId("767881")
.appName("广告demo")//SDK后台注册的应用名称
.setChannel("demo")//渠道
// 竖屏 - AdConfig.REWARD_VIDEO_SCREEN_VERTICAL
// 横屏 - AdConfig.REWARD_VIDEO_SCREEN_x`HORIZONTAL
.RewardVideoScreenDirection(AdConfig.REWARD_VIDEO_SCREEN_VERTICAL) // 设置激励视频播放页面的横竖屏
.debug(true)////上线需要设置false
.setDeniedUpDeviceInfo(object : DeniedUpDeviceInfo() {
/**
* 是否允许SDK主动使用地理位置信息
* */
override fun isCanUseLocation(): Boolean {
return super.isCanUseLocation()
}
/**
* 获取应用列表
* */
override fun appList(): Boolean {
return super.appList()
}
/**
* 是否允许SDK主动使用手机硬件参数
* */
override fun isCanUsePhoneState(): Boolean {
return super.isCanUsePhoneState()
}
/**
* 当isCanUsePhoneState=false时,可传入IME信息
* */
override fun getDevImei(): String? {
return super.getDevImei()
}
/**
* 是否允许SDK主动使用ACCESS_WIFI_STATE权限
* */
override fun isCanUseWifiState(): Boolean {
return super.isCanUseWifiState()
}
/**
* 当isCanUseWifiState=false时,可传入Mac地址信息
* */
override fun getMacAddress(): String? {
return super.getMacAddress()
}
/**
* 是否允许SDK主动使用WRITE_EXTERNAL_STORAGE权限
* */
override fun isCanUseWriteExternal(): Boolean {
return super.isCanUseWriteExternal()
}
/**
* 开发者可以传入OAID
* */
override fun getDevOaid(): String? {
return super.getDevOaid()
}
/**
* 是否能获取android ID
* */
override fun isCanUseAndroidId(): Boolean {
return super.isCanUseAndroidId()
}
/**
* 开发者可以传入android ID
* */
override fun getAndroidId(): String? {
return super.getAndroidId()
}
/**
* 是否允许SDK在申明和授权了的情况下使用录音权限
* */
override fun isCanUsePermissionRecordAudio(): Boolean {
return super.isCanUsePermissionRecordAudio()
}
})
.setOaidProvider { "test_oaid" } //传入 OAID 获取器,建议集成 OAID SDK的应用设置
.build()
AdView.initSDK(this, initSDKConfig, object : InitSDKListener {
override fun initializeSucceed() {
//初始化成功
}
override fun initializeFail() {
//初始化失败
}
})
//今日头条屏幕适配
// configUnits();
}
fun getContext(): Context? {
return mContext
}
}
InitSDKConfig
初始化SDK配置类
方法名 | 说明 |
AppId(String var1) | 必选参数,设置应用ID |
appName(String var1) | 设置应用名称 |
TanxAppKey(String var1) | 接入Tanx需要填写 |
setChannel(String var1) | 设置渠道 |
RewardVideoScreenDirection(int var1) | 设置激励视频播放页面的横竖屏 |
debug(boolean var1) | 设置是否调试模式,上线前需要设置false |
setDeniedUpDeviceInfo(DeniedUpDeviceInfo var1) | 设置隐私权限控制 |
setOaidProvider(COaidProvider oaidProvider) | 设置oaid收集器 |