菜单

插屏广告

1. 插屏广告

插屏广告SDK的导入:

require("./AnyThinkAds/ATInterstitialJSSDK"); 

1.1 加载插屏广告

使用以下代码加载插屏广告

//v5.6.8新增,只针对Sigmob平台,Sigmob的激励视频广告源当做插屏使用
var setting = {};
setting[ATInterstitialJSSDK.UseRewardedVideoAsInterstitial] = false;
//setting[ATInterstitialJSSDK.UseRewardedVideoAsInterstitial] = true;
ATInterstitialJSSDK.loadInterstitial(this.placementID(), setting); 

//v5.6.8以下
ATInterstitialJSSDK.loadInterstitial(this.placementID());

注: 请参阅下文,了解如何获得有关插屏广告事件的通知(加载成功/失败,展示,点击,视频开始/结束)。

1.2 判断是否有广告缓存以及获取广告状态

使用以下代码判断是否有广告缓存:

ATInterstitialJSSDK.hasAdReady(this.placementID());

使用以下代码获取广告状态(返回值类型为Json字符串):

ATInterstitialJSSDK.checkAdStatus(this.placementID());

广告状态Json字符串key-value如下:

1、isLoading:是否正在加载

2、isReady:是否有广告缓存

3、adInfo:当前优先级最高的广告缓存信息

1.3 展示插屏广告

与激励视频相同,插屏广告只要调用展示api并传递展示广告位ID或者广告位ID+场景ID(场景ID可通过Taku后台创建)作为参数:

ATInterstitialJSSDK.showAd(this.placementID());

//当使用场景功能时,通过此api展示广告
//ATInterstitialJSSDK.showAdInScenario(this.placementID(), "Your Scenario Id");

1.4 实现插屏的监听器

有关插屏广告事件的通知示例如下(全局只能设置一个监听对象)

var interstitialListener = {
    //广告加载成功
    onInterstitialAdLoaded : function (placementId) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdLoaded(" + placementId + ")");
    },
    //广告加载失败
    onInterstitialAdLoadFail : function(placementId, errorInfo) {
         ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdLoadFail(" + placementId + ", " + errorInfo + ")");   
    },
    //广告展示成功
    onInterstitialAdShow : function(placementId, callbackInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdShow("  + placementId + ", " + callbackInfo + ")");
    },
    //广告视频开始播放,部分平台有此回调
    onInterstitialAdStartPlayingVideo : function(placementId, callbackInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdStartPlayingVideo("  + placementId + ", " + callbackInfo + ")");
    },
    //广告视频播放结束,部分广告平台有此回调
    onInterstitialAdEndPlayingVideo : function(placementId, callbackInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdEndPlayingVideo("  + placementId + ", " + callbackInfo + ")");
    },
    //广告视频播放失败,部分广告平台有此回调
    onInterstitialAdFailedToPlayVideo : function(placementId, errorInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdFailedToPlayVideo(" + placementId + ", " + errorInfo + ")");
    },
    //广告展示失败
    onInterstitialAdFailedToShow : function(placementId) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdFailedToShow(" + placementId + ")");
    },
    //广告被关闭
    onInterstitialAdClose : function(placementId, callbackInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdClose("  + placementId + ", " + callbackInfo + ")");
    },
    //广告被点击
    onInterstitialAdClick : function(placementId, callbackInfo) {
        ATJSSDK.printLog("AnyThinkInterstitialDemo::onInterstitialAdClick("  + placementId + ", " + callbackInfo + ")");
    }
};

ATInterstitialJSSDK.setAdListener(interstitialListener);

注: 可查看Demo的AnyThinkInterstitialDemoJS.js demo project.

最近修改: 2025-05-30Powered by