Skip to main content

激励视频广告

创建激励广告请求#

RewardAdRequest.Builder rewardAdBuilder = new RewardAdRequest.Builder();
rewardAdBuilder.autoMute(false) //【可选】设置是否自动静音,默认false
.setRewardTime(30) //【可选】设置激励卡秒,激励发放时间。不配置时默认为视频长度。必须大于3s
.setRewardTrigger(RewardAdRequest.TRIGGER_OTHER)//【可选】激励类型
.setPosId(37058) //【必须】激励视频广告位id
.setAdCount(1); //【可选】广告个数,默认1

加载激励视频广告#

RewardAd mRewardAd;
RewardAd.load(rewardAdBuilder.build(), new RewardAd.RewardAdLoadListener() {//激励视频广告加载回调
public void onAdLoadError(int err, String msg) {
// 加载失败,err是错误码,msg是描述信息
Log.e(TAG, "reward ad load err: " + err + " " + msg);
}
public void onVideoPrepared(RewardAd ad) {
// 广告信息已解析完成,参数ad为激励视频广告实例
// 在此回调中触发展示广告,则优先使用在线播放的方式加载广告
Log.i(TAG, "reward video prepared");
mRewardAd = ad;
}
public void onAdLoaded(RewardAd ad) {
// 广告素材下载完成,参数ad为激励视频广告实例
// 在此回调中触发展示广告,则使用本地播放的方式读取广告
Log.i(TAG, "reward ad loaded");
mRewardAd = ad;
}
});

展示激励视频广告#

if (mRewardAd != null && mRewardAd.isValid()) {
//设置激励视频广告展示回调
mRewardAd.setListener(new RewardAd.RewardAdListener() {
@Override
public void onAdSkip() { //用户跳过广告回调
Log.i(TAG, "onAdSkip");
}
public void onReward() { //激励发放回调
Log.i(TAG, "onReward");
}
public void onVideoComplete() { //视频播放完成回调
Log.i(TAG, "onVideoComplete");
}
public void onAdShow() { //广告曝光回调
Log.i(TAG, "onAdShow");
}
public void onAdClick() { //广告点击回调
Log.i(TAG, "onAdClick");
}
public void onAdClosed() { //广告关闭回调
Log.i(TAG, "onAdClosed");
}
public void onAdError(int err, String msg) {
//广告展示失败回调
Log.e(TAG, "onAdError err: " + err + " " + msg);
}
/**
* 广告详情页关闭回调,返回交互类型
* 0.未知 1.广告内webView展示 3.视频详情页
*/
public void onAdDetailClosed(int interactionType) {
Log.i(TAG, "onAdDetailClosed, interaction type: " + interactionType);
}
});
mRewardAd.show(); //展示激励视频广告
}

主要API#

com.tencent.klevin.ads.ad.RewardAdRequest.Builder

com.tencent.klevin.ads.ad.RewardAd

方法名说明参数
Builder.setPosId(long posId)配置激励视频广告的广告位Id【必须】posId为申请的激励广告位
Builder.setAdCount(int count)配置广告的拉取个数,默认为1,当前可传1或不调用【可选】
Builder.setRewardTrigger(int trigger)配置激励类型,默认值为RewardAdRequest.TRIGGER_OTHER【可选】可传参数为:RewardAdRequest.TRIGGER_REVIVIFICATION,//复活RewardAdRequest.TRIGGER_SIGNIN,//签到RewardAdRequest.TRIGGER_PROPERTY,//道具RewardAdRequest.TRIGGER_IDEAL_MONEY,//虚拟货币RewardAdRequest.TRIGGER_OTHER,//其他
Builder.setRewardTime(int time)激励发放的时间,单位秒。不传时默认为视频时长。必须不小于3s【可选】默认视频时长
Builder.autoMute(boolean autoMute)激励广告播放自动静音。默认为false,声音开启【可选】true:静音false:声音【默认】
Builder.build()构造激励广告的请求参数
RewardAd.load(RewardAdRequest adRequest, RewardAdLoadListener listener)加载激励广告adRequest:请求参数RewardAdLoadListener:激励广告加载回调,加载成功时返回激励广告实例对象
RewardAd.setListener(RewardAdListener adListener)加载广告成功后,在展示广告之前设置广告的交互回调RewardAdListener:激励广告回调,包含广告展示,点击,错误,关闭,跳过,激励发放,视频播放完成等回调事件。
RewardAd.show()展示广告
RewardAd.isValid()检查广告是否有效,展示前检查。广告已曝光,已过期均为无效广告。
RewardAd.getPromotedType()返回广告的推广类型:2=下载; 3=网页推广【2.10.1版本新增】
RewardAd.getRequestId()返回广告请求的requestId。【2.11.0版本新增】
RewardAd.getCreativeId()返回广告的创意Id。【2.11.0版本新增】
RewardAd.getECPM()获取ECPM,即千次曝光收益,单位为分。