跳到主要内容

激励广告

用户可自主选择与此类广告进行互动,以换取应用内奖励,例如在游戏中获得加分或额外生命值。

简介​

激励广告,一般在App的游戏页面展示。全屏播放广告后获得相应的奖励(支持横屏)。广告内容支持图片、视频。效果如图:

全屏图

我们建议您下载并体验 Hisavana SSP Demo ,以便更直观、更深入地了解 SDK 的功能和使用方法。通过 Demo,您可以快速上手并探索其在实际场景中的应用效果。

加载广告​

请设置相应参数和监听回调,相关回调中所适用的广告位类型请仔细查看文档,以免造成接入偏差。

// 初始化激励广告对象,其中"rewarded_id"是激励广告位ID
TRewarded tRewarded = new TRewarded("rewarded_id");
// 设置广告监听器
tRewarded.setListener(new TAdListener());
// 加载广告
tRewarded.loadAd();

// 广告监听器,监听广告的请求超时、加载完成(填充)、展示、点击、异常、关闭、激励动作的回调
private static class TAdListener extends AdListener {

// 异常回调(适用的广告位:所有广告位)
@Override
public void onError(TaErrorCode adError) {
Log.d(TAG,"Ad failed callback");
}

// 加载完成回调(适用的广告位:Splash、Interstitial、Banner、Reward)
@Override
public void onAdLoaded() {
Log.d(TAG,"Ad loaded callback");
}

// 点击回调(适用的广告位:Splash、Interstitial、Banner、Reward)
@Override
public void onAdClicked() {
Log.d(TAG,"Ad click callback");
}

// 展示回调(适用的广告位:Splash、Interstitial、Banner、Reward)
@Override
public void onAdShow() {
Log.d(TAG,"Ad show callback");
}

// onTimeOut() 已废弃。SDK 会结合当前请求结果与广告缓存处理加载超时:
// 超时且没有可用广告时,回调 onError(...);超时但已取得可用广告(包括缓存广告)时,
// 按加载成功处理并回调 onAdLoaded(...),不会回调 onError(...)。
@Override
public void onTimeOut() {
Log.d(TAG,"Ad request timeout callback");
}

// 关闭回调(适用的广告位:Splash、Interstitial、Reward)
@Override
public void onAdClosed() {
Log.d(TAG,"Ad close callback");
}

// 激励回调(适用的广告位:Reward)
@Override
public void onRewarded() {
Log.d(TAG,"Ad rewarded callback");
}

}

展示广告​

请把激励广告展示出来。

// 当前广告加载成功并且处于投放期内,则进行展示;否则不进行展示
if (tRewarded != null && tRewarded.isReady()) {
tRewarded.show();
}

销毁广告​

请及时回收广告,否则App会发生内存泄漏。

// 退出广告场景后,请销毁该广告对象。
@Override
protected void onDestroy() {
super.onDestroy();
if (tRewarded != null) {
tRewarded.destroy();
tRewarded = null;
}
}

其它API​

API调用介绍
tRewarded.isReady()当前广告加载成功并且处于投放期内,则进行展示;否则不进行展示
tRewarded.isOfflineAd()当前广告是否离线
tRewarded.getFillAdType()当前填充广告属于离线还是在线广告;1:离线广告、0:在线广告、-1:无填充
tRewarded.getBidPrice()获取广告的有效竞价价格,单位为美分/eCPM