Skip to main content

4、横幅广告

一、简介#

主要介绍在Android项目中如何集成 TradPlus SDK的横幅广告:

  • 支持Android 16以上的应用;
  • 针对v6.2以上版本的集成;
  • 建议先注册TradPlus账户,并添加应用;
  • 按照流程成功集成TradPlus SDK。

> banner广告

  • banner广告的TPBanner本身是一个view,需要开发者创建后添加到指定位置
  • 广告loaded成功后,TradPlus SDK会自动的把广告内容填充到TPBanner中
  • 在TradPlus后台配置自动刷新功能,一次loaded后,间隔固定的时间SDK内部会自动触发下一次load并在loaded成功后替换内容

二、集成步骤#

  • V6.X 为例
// 1、初始化广告位。仅调用一次。
TPBanner tpBanner = new TPBanner(activity);
// 2、布局文件中添加展示广告view
ViewGroup adContainer = findViewById(R.id.ad_container);
adContainer.addView(tpBanner);
// 3、设置广告监听
tpBanner.setAdListener(new BannerAdListener() {...});
// 4、设置每层广告源回调监听 (可选)
tpBanner.setAllAdLoadListener(new LoadAdEveryLayerListener() {...});
// 5、请求广告。广告位ID在TradPlus后台创建。广告加载成功会自动展示在你所添加的布局中。
tpBanner.loadAd("AdUnitId");

三、API说明#

3.1 加载类API#

V6.X API TPBanner方法说明
TPBanner(Activity activity)横幅广告的初始化方法。仅初始化时调用一次。
setAdListener(BannerAdListener listener)设置广告监听回调,其中BannerAdListener是需要实现广告事件回调的接口类。
setAllAdLoadListener(LoadAdEveryLayerListener everyLayerListener)(可选)设置单个源维度的监听回调,其中LoadAdEveryLayerListener是需要实现广告事件回调的接口类。
loadAd(String adUnitId)请求广告。adUnitId广告位ID在TradPlus后台创建。
loadAd(String adUnitId,String sceneId)(可选) 请求广告并设置广告场景ID。sceneId广告场景ID,TradPlus后台创建。使用该方法必须调用entryAdScenario()
closeAutoShow()(可选)V6.9.5新增API。关闭自动展示。需要和展示广告showAd()一起调用。
showAd()(可选)V6.9.5新增API。展示广告。需要和展示广告closeAutoShow()一起调用。注意:Baidu的Banner不支持load()show()分开调用。
entryAdScenario(String sceneId)(可选)进入广告位所在界面时调用,并传入sceneId广告场景ID。必须在loadAd()后调用。 广告场景是用来统计进入广告场景的次数和进入场景后展示广告的次数,所以请在准确的位置调用。 了解更多,请看广告场景的调用时机和用途说明
setVisibility(View.GONE)(可选)加载广告成功之后,隐藏。需要在主线程调用。
setVisibility(View.VISIBLE)(可选)隐藏广告后,展示。需要在主线程调用。
setAutoDestroy(boolean destory)设置不自动释放。默认是true。在TPBanner被remove后会释放广告资源。如果特殊场景需要保存TPBanner继续使用,可以设置false
onDestroy()释放广告。
TPAdInfo见请参考回调信息说明

3.2 监听回调API#

V6.X API BannerAdListener 方法说明
onAdClicked(TPAdInfo tpAdInfo)广告被点击。事件回调监听中的TPAdInfo,请参考回调信息说明。同下
onAdImpression(TPAdInfo tpAdInfo)广告被展示。部分三方源没有该回调。AdColony、AppLovin、Unity Ads 、Admob、Mopub、Criteo、MyTarget无此回调。
onAdClosed(TPAdInfo tpAdInfo)广告被关闭。
onAdLoaded(TPAdInfo tpAdInfo, TPBaseAd tpBaseAd)广告加载成功。
onAdLoadFailed(TPAdError error)广告加载失败。事件回调监听中的TPAdError,请参考错误码&错误信息说明。同下
  • (可选)设置单个源维度的监听回调
V6.X API LoadAdEveryLayerListener 方法说明
onAdAllLoaded(boolean isSuccess)V6.4.5新增API。广告位的状态。loadAd()完毕后用于判断是否有可用广告,true表明有可用广告,false表明没有可用广告。
oneLayerLoadFailed(TPAdError adError, TPAdInfo adInfo)V6.4.5新增API。配置多个广告源,d每个广告源加载失败后会都会回调一次。
oneLayerLoaded(TPAdInfo adInfo)V6.4.5新增API。配置多个广告源,每个广告源加载成功后会都会回调一次。
onLoadAdStart(TPAdInfo tpAdInfo)V6.4.5新增API。请求广告后,广告开始加载。
onBiddingStart(TPAdInfo tpAdInfo)V6.4.5新增API。Bidding开始加载。
onBiddingEnd(TPAdInfo tpAdInfo)V6.4.5新增API。Bidding加载完成。

3.3 5.X旧版本API#

  • 注意:接入V6.X版本,可跳过这部分API说明。
  • 加载类API

V5.X API TradPlusView方法说明
TradPlusView(Context context)横幅广告的初始化方法。仅初始化时调用一次。
setAdUnitId(String adUnitId)设置广告位ID。AdUnitId广告位ID在TradPlus后台创建。
setAdViewListener(FSAdViewListener listener)设置广告监听回调,其中FSAdViewListener是需要实现广告事件回调的接口类。
loadAd()请求广告。成功获取广告后,自动展示。
destroy()释放资源。
  • 监听回调API
FSAdViewListener 方法说明
onAdViewClicked(TradPlusView tradPlusView)广告被点击。
onAdViewExpanded(TradPlusView tradPlusView)广告被展示。
onAdViewLoaded(TradPlusView banner)广告加载成功。
onAdViewFailed(TradPlusView tradPlusView, TradPlusErrorCode tradPlusErrorCode)广告加载失败。