激励视频广告 - sunitsdk/SUnitDemo GitHub Wiki

下述参数中的unitId对应各家广告源生成的「Unit Space ID」,可协同SHAREit服务对接人获取

1. loadAd

RewardedAd.loadAd(String unitId);

2. isAdReady

此接口必须要在主线程中调用

//scene 广告展示的场景
//subPortal 此次广告场景中的入口
RewardedAd.isAdReady(String unitId, String scene, String subPortal)

特殊场景:如果业务需要循环调用此方法检测广告缓存,或者用来切换按钮或图标状态(不是用来展示广告),为了避免产生不必要的数据,scene规定为ShareItAd.LOOP,subPortal不需要传

RewardedAd.isAdReady(unitId, ShareItAd.LOOP);

scene、subPortal 需要传入,方便做数据分析

3. showAd

此接口必须要在主线程中调用

目前提供了两种展示模式:

  • SDK管理广告缓存(推荐)(需配合isAdReady使用,loadAd请求不带adLoadListener参数)
    SDK 将根据 unitId 查找已有的缓存对象. 无缓存时将展示失败(配合isAdReady使用)
RewardedAd.showAd(String unitId, IAdShowListener adShowListener)

示例:

//load        
RewardedAd.loadAd(unitId,null);

//show
if (RewardedAd.isAdReady(unitId,scene, subPortal)) {
    RewardedAd.showAd(unitId, null);
}
  • 接入方自己管理缓存(loadAd请求带adLoadListener参数)
    可以将缓存的广告对象直接进行展示. 广告对象过期或被销毁等情况将展示失败(需配合adLoadListenner使用)
RewardedAd.showAd(AdWrapper adWrapper, IAdShowListener adShowListener)

示例:

RewardedAd.loadAd(unitId, new IAdLoadListener() {
    @Override
    public void onAdLoaded(String unitId, AdWrapper adWrapper) {
        RewardedAd.showAd(adWrapper, null);
    }

    @Override
    public void onAdError(String unitId, AdException adError) {

    }
});

4. showRewardedBadgeView 激励视频场景入口上报(此方法调用可能会比较频繁,请耐心接入)

此接口必须要在主线程中调用

//scene 广告展示的场景(页面)
//subPortal 点击展示激励视频的按钮
RewardedAd.showRewardedBadgeView(scene, String... subPortal);

scene、subPortal 需要传入

  • 方法目的:统计激励视频从入口展示到用户点击之间的比例,方便做漏斗分析各个激励视频入口情况

  • 上报场景:包含激励视频按钮的页面

  • 调用时机:游戏场景从不可见到可见(打开弹窗或进入游戏场景;锁屏、home键、跳转其他场景后返回到原来场景),上报此页面内所有可点击激励视频入口。

Android原生简单示例:Activity、Fragment或Dialog中onResume方法。如当前为首页,并且有两个激励视频按钮

@Override
protected void onResume() {
    super.onResume();
    if(按钮均可点击&&按钮可见) {
    RewardedAd.showRewardedBadgeView(ShareItAd.HOME, "portal1", "portal2");
    }
}

cocos简单示例:如当前为首页,并且有两个激励视频按钮 首页场景订阅 cc.game.EVENT_HIDE cc.game.EVENT_SHOW 事件,当触发 EVENT_SHOW 事件时上报当前场景或弹框的所有可点击并且可见入口

cc.game.on(cc.game.EVENT_SHOW, function () {
   if(按钮均可点击&&按钮可见) {
   xx.showReWardedBadgeView(ShareItAd.HOME, "portal1", "portal2");
   }
});

流程图示例: img5

⚠️ **GitHub.com Fallback** ⚠️