横幅广告
一、注意事项
- 禁止在onBannerLoadFailed回调中执行广告加载的方法,否则会引起死循环。
- 禁止在onBannerLoaded回调中直接执行广告展示的方法。SDK有广告过期自动补充功能。如果在onBannerLoaded回调中执行showBannerAd(),开发者会无法精准控制告展示的时机。
二、集成步骤
1、请求广告
//配置参数extraMap
var extra :TPBannerExtra ={
    className:className,
    x:x,
    y:y,
    height:height,
    width:width,
    adPosition:this.positionMode,
    customMap:customMap,//流量分组
    localParams:localParams,//local自定义Map
    closeAutoShow:true,// 是否关闭自动展示
    backgroundColor:this.BGColorStr,//自定义背景色 例如:#FFFFFF
    openAutoLoadCallback:false,//开启一次loadSplashAd对应一次onAdLoaded回调,默认关闭
    maxWaitTime:waitTime,
    // 0 = 顶部水平居中;1 = 垂直居中并水平居中; 2 = 底边水平居中;默认 = 0
    contentMode:0,	//仅iOS支持 居中模式
    closeAutoDestroy:true; //仅安卓 自动销毁
};
// sceneId 广告场景Id 可传“”
TradPlusBanner.loadBannerAd("在TP平台创建的广告位ID", "sceneId",extra);
2、检查是否有可用广告
- 开发者在监听到onAdLoaded回调后调用。
- 建议开发者展示广告前,调用该API判断是否有可用广告,有广告再调用show方法
- true表示有可用广告,false表示暂时无可用广告
- 当调用bannerAdReady返回false时,sdk会重新请求广告,无需开发者再次调用load方法。
var ready = TradPlusBanner.bannerAdReady("在TP平台创建的广告位ID");
3、进入广告场景
- 进入广告场景时传入sceneId,展示广告时也需传入sceneId,否则会影响统计。
TradPlusBanner.entryBannerAdScenario("在TP平台创建的广告位ID","sceneId");
4、展示广告
TradPlusBanner.showBannerAd("在TP平台创建的广告位ID","sceneId");
5、隐藏和再次展示
- 广告展示后,隐藏
TradPlusBanner.hideBanner("在TP平台创建的广告位ID");
- 广告隐藏后,再展示
TradPlusBanner.displayBanner("在TP平台创建的广告位ID");
6、监听回调
var listener:TPBannerListener = {
    onBannerLoaded(adUnitId, adInfo) {
        // 请求一次广告,有广告加载成功,一轮请求只会返回一次
    },
    onBannerLoadFailed(adUnitId, error) {
        // 请求一次广告,所有广告加载失败,一轮请求只会返回一次
    },
    onBannerImpression(adUnitId, adInfo) {
        // 展示成功
    },
    onBannerShowFailed(adUnitId, adInfo, error) {
        // 展示失败
    },
    onBannerClosed(adUnitId, adInfo) {
        // 广告关闭
    },
    onBannerClicked(adUnitId, adInfo) {
        // 广告点击
    },
    onBannerStartLoad(adUnitId, adInfo) {
        // 广告开始加载
    },
    onBannerBiddingStart(adUnitId, adInfo) {
        // Bidding开始
    },
    onBannerBiddingEnd(adUnitId, adInfo, error) {
        // Bidding结束,有error表示Bidding失败
    },
    onBannerIsLoading(adUnitId) {
        // 一轮请求还没有结束,又发起了一轮请 求
    },
    onBannerOneLayerStartLoad(adUnitId, adInfo, error) {
        // 每层广告开始加载
    },
    onBannerOneLayerLoaded(adUnitId, adInfo) {
        // 单层广告加载成功
    },
    onBannerOneLayerLoadFailed(adUnitId, adInfo) {
       // 单层广告加载加载失败
    },
    onBannerAllLoaded(adUnitId, isSuccess) {
        // 请求一次广告,一轮结束会收到一次回调,success true表示有广告加载成功,false表示所有广告加载失败
    },
};
TradPlusBanner.setBannerListener(listener);
“再看一次”监听回调 快手、穿山甲支持(可选)
...
    onPlayAgainImpression(adUnitId, adInfo) {
    	// “再看一次”展示
    },
    onPlayAgainShowFailed(adUnitId, adInfo, error) {
		// “再看一次”展示失败
    },
    onPlayAgainClicked(adUnitId, adInfo) {
    	// “再看一次”点击
    },
    onPlayAgainRewarded(adUnitId, adInfo) {
    	// “再看一次”奖励
    },
    onPlayAgainPlayStart(adUnitId, adInfo) {
		// “再看一次”视频播放开始
    },
    onPlayAgainPlayEnd(adUnitId, adInfo) {
    	// “再看一次”视频播放结束
    },
    onDownloadStart(adUnitId, adInfo, totalBytes, currBytes, fileName, appName) {
     // 开始下载回调
     // totalBytes:文件总大小(单位:字节)
     // currBytes:当前已下载的大小(单位:字节)
     // fileName:文件名称
     // appName:文件对应的应用名称	
    },
    onDownloadUpdate(adUnitId, adInfo, totalBytes, currBytes, fileName, appName, progres) {
     // 下载进度更新回调
     // progress:下载进度
    },
    onDownloadPause(adUnitId, adInfo, totalBytes, currBytes, fileName, appName) {
     // 暂停下载回调
    },
    onDownloadFinish(adUnitId, adInfo, totalBytes, currBytes, fileName, appName) {
     // 下载完成回调
    },
    onDownloadFailed(adUnitId, adInfo, totalBytes, currBytes, fileName, appName) {
     // 下载失败回调
    },
    onInstalled(adUnitId, adInfo, totalBytes, currBytes, fileName, appName) {
     // 下载失败回调
    },
...