激励视频广告
简介
本SDK为接入方提供激励视频广告,该广告的效果为观看完毕视频广告,发放奖励给用户。使用场景包括但不限于:
①游戏等应用内观看视频广告获得游戏内金币等:用户必须观看完整视频才能获取奖励。
②积分类应用接入;支持的广告尺寸: 全屏横屏播放和竖屏。
注意事项
①聚合SDK是通过广告位ID发起广告请求的,切记不要使用混淆。
②在广告接入前需要明确各ADN对应聚合SDK广告样式情况,以确保正确完成广告接入,避免由于广告类型不匹配导致接入报错等情况的发生。
③由于各广告平台对于包名校验规则不同,需确保在聚合平台填写的包名符合各ADN平台规范,避免由于包名校验不匹配导致的无广告返回情况的产生。
④广告请求时机,建议在收到SDK初始化成功回调后发起广告请求,当SDK初始化回调一直失败时,建议首先明确应用ID及广告位ID是否赋值正确、是否有多余空格、是否是网络不稳定导致的超时等,当排查后无法定位问题时,建议通过抓包将config字段下的加密内容提供过来,我方协助定位问题。
⑤如若针对展示失败有重试机制,建议只重试一次即可,避免无限重试引发死循环场景。
⑥当展示失败/回调监听不执行时,建议检查是否有广告对象被覆盖或者被提前释放的场景导致,每次发次广告请求时,需要重新创建新的广告来调用广告请求方法。
接入激励视频广告
一、创建AdView对象
mRewardVideoView = AdView(this, requestConfig)
二、创建广告请求参数AdRequestConfig
val requestConfig: AdRequestConfig = AdRequestConfig.Builder()
.AdType(AdConfig.AD_TYPE_REWARDVIDEO)
.slotId("****) //广告位id
.showDownloadConfirmDialog(isShowDownloadConfirmDialog)
.build()
三、请求广告
mRewardVideoView!!.setRewardVideoListener(object : RewardVideoListener {
override fun onAdReady(price: Double){ //视频广告准备就绪,回调此方法后可以调用播放接口
Toast.makeText(this@RewardVideoActivity, "激励视频广告就绪", Toast.LENGTH_SHORT)
.show()
// 视频准备就绪,才允许播放
mShowVideoBtn!!.text = "点击播放视频"
mShowVideoBtn!!.isEnabled = true
}
override fun onVideoCached() {
Toast.makeText(this@RewardVideoActivity, "激励视频广告缓冲成功", Toast.LENGTH_SHORT)
.show()
}
override fun onAdShow(cAdInfo: CAdInfo?) { //广告展示
// Toast.makeText(RewardVideoActivity.this, "激励视频广告展示", Toast.LENGTH_SHORT).show();
}
override fun onAdClick(s: String?) { //广告被点击
Toast.makeText(this@RewardVideoActivity, "激励视频广告点击", Toast.LENGTH_SHORT)
.show()
}
override fun onAdFailed(s: String) { //广告返回失败或展示失败(灭屏状态调用播放回调此方法)
Toast.makeText(
this@RewardVideoActivity,
"激励视频广告加载失败: $s", Toast.LENGTH_SHORT
).show()
onAdLoadFailed();
}
override fun onVideoComplete() { //播放完成
Toast.makeText(this@RewardVideoActivity, "激励视频广告播放完成", Toast.LENGTH_SHORT)
.show()
}
override fun onAdReward() { //激励视频触发激励
Toast.makeText(this@RewardVideoActivity, "激励视频广告触发奖励", Toast.LENGTH_SHORT)
.show()
}
override fun onAdClose() { //视频广告界面关闭
Toast.makeText(this@RewardVideoActivity, "激励视频广告关闭", Toast.LENGTH_SHORT)
.show()
// 退出,再次进入重新加载激励视频
finish()
}
})
四、展示广告
为了确保播放流程建议在cached回调后调用广告展示并判断isRewardVideoOk状态
if (mRewardVideoView != null && mRewardVideoView!!.isRewardVideoOk) {
mRewardVideoView!!.showRewardVideoAd(this)
}
CAdInfo 说明
<table>
<tr>
<td><b>方法名</b></td>
<td><b>说明</b></td>
</tr>
<tr>
<td> int getNetworkFirmId() </td>
<td> 返回竞价成功广告网络ID </td>
</tr>
<tr>
<td> String getAdsourceId() </td>
<td> 返回竞价成功广告源ID </td>
</tr>
<tr>
<td> double getEcpm() </td>
<td> 返回竞价成功价格 </td>
</tr>
</table>
六、销毁广告
protected void onDestroy() {
super.onDestroy();
if (mRewardVideoView!= null) {
mRewardVideoView.onDestroyAd();
}
}
接口说明
AdRequestConfig.Builder说明
方法名 | 说明 |
AdType(int adType) | 聚合广告位ID |
slotId((String slotId) | 设置广告位ID |
showDownloadConfirmDialog(boolean isShowDownloadDialog) | 设置是否弹出下载弹框 |
方法名 | 说明 |
void onAdReady() | 加载完成的回调 |
void onVideoCached() | 广告视频本地加载完成的回调 |
void onAdFailed(String message) | 激励视频广告加载失败 |
void onAdShow(CAdInfo cAdInfo) | 激励视频广告展示 |
void onAdClick(String message) | 激励视频广告点击 |
void onVideoComplete() | 激励视频广告播放完成 |
void onAdReward() | 激励视频触发激励 |
void onAdClose() | 视频广告界面关闭 |
方法名 | 说明 |
void setRewardVideoListener( RewardVideoListenerlistener) | 设置激励事件监听 |
void isRewardVideoOk() | 激励广告是否可以展示 |
void showRewardVideoAd(Activity activity) | 展示激励广告 |
void onDestroyAd() | 销毁激励广告 |