Skip to main content

4、横幅广告

一、简介#

本文档主要介绍在Unity3D中如何集成 TradPlus SDK的横幅广告:

  • 支持Android 16以上的应用;
  • 支持Unity 2018.4.0f1以上的版本;
  • 针对v6.x版本的集成;
  • 建议先注册TradPlus账户,并添加应用;
  • 初始化TradPlus SDK。

二、集成步骤#

部分代码示范

// 1、初始化广告位,广告位ID在TradPlus后台创建
TradPlus.LoadBannerPluginsForAdUnits("AdUnitId");
// 2、加载广告 并设置弹出方式
TradPlus.CreateBanner("AdUnitId",TradPlus.AdPosition.BottomCenter);
//3、释放广告
TradPlus.DestroyBanner("AdUnitId");

三、API说明#

3.1 加载类API#

方法说明
TradPlus.LoadBannerPluginsForAdUnits("AdUnitId");初始化广告位。AdUnitId广告位ID在TradPlus后台创建。仅初始化时调用一次。
TradPlus.CreateBanner("AdUnitId",TradPlus.AdPosition.BottomCenter);加载广告。设置广告弹出的地方。每次请求广告都需要调用。
TradPlus.CreateBanner("AdUnitId",TradPlus.AdPosition.BottomCenter,"sceneId");(可选)V6.8.0新增API。加载广告并设置广告场景ID。设置广告弹出的地方。每次请求广告都需要调用。需要和设置广告场景ID一起使用。
TradPlus.BannerEntryAdScenario("AdUnitId","sceneId");(可选)进入广告位所在界面时调用。了解更多,请看广告场景的调用时机和用途说明需要和设置广告场景ID一起使用。
TradPlus.ShowBanner("AdUnitId",false);(可选)隐藏对应的广告。
TradPlus.ShowBanner("AdUnitId",true);(可选)展示对应的广告(仅调用隐藏广告之后使用)。
TradPlus.DestroyBanner("AdUnitId");释放资源。

3.2 监听回调API#

  • 广告位维度回调监听 V6.4.5新增API
方法参数说明
TradPlusManager.OnAdLoadedstring tpAdInfo, string height请求广告后,加载成功只会回調一次,老版本API为TradPlusManager.OnAdLoadedEvent
TradPlusManager.OnAdLoadFailedstring adUnitId ,string errorMsg请求广告后,在所有广告源请求失败的情况下才会回調一次 (即设置多个广告源缓存,当所有广告源加载失败才会回调),老版本API为TradPlusManager.OnAdFailedEvent
TradPlusManager.OnAdClickedstring tpAdInfo广告被点击,老版本API为TradPlusManager.OnAdClickedEvent
TradPlusManager.OnAdImpressionstring tpAdInfo广告展示,老版本API为TradPlusManager.OnAdExpandedEvent
TradPlusManager.OnAdClosedstring tpAdInfo广告被关闭
TradPlusManager.OnAdShowFailedstring tpAdInfo ,string errorMsgV7.3.0新增API。广告展示失败。
  • 广告源维度回调监听 (可选) V6.4.5新增API
方法参数说明
TradPlusManager.OnAdAllLoadedbool isSuccess,string adUnitId广告位的状态。loadAd()完毕后用于判断是否有可用广告,true表明有可用广告,false表明没有可用广告。
TradPlusManager.OneLayerLoadFailedstring tpAdInfo ,string errorMsg配置多个广告源,每个广告源加载失败后会都会回调一次。
TradPlusManager.OneLayerLoadedstring tpAdInfo配置多个广告源,每个广告源加载成功后会都会回调一次。
~~TradPlusManager.OnLoadAdStart ~~string tpAdInfo请求广告后,广告开始加载。
V7.9.0 废弃
TradPlusManager.OneLayerStartLoadstring tpAdInfo每层waterfall 向三方广告源发起请求前,触发的回调。
V7.9.0 新增回调
TradPlusManager.OnAdStartLoadstring adUnitId每次调用load方法时返回的回调,包含自动加载等触发时机。
V7.9.0 新增回调
TradPlusManager.OnBiddingStartstring tpAdInfoBidding开始加载。
TradPlusManager.OnBiddingEndstring tpAdInfo ,string errorMsgBidding加载完成。
V7.3.0新增回调参数 errorMsg
  • 监听回调中的参数说明
参数说明
TPAdInfo广告位ID、三方广告平台、ecpm等信息,具体请参考回调信息说明
errorMsg广告请求失败、广告展示失败的错误信息,具体请参考错误码、错误信息说明

四、特殊需求需要导出到AS集成Banner#

接入过程可以参考原生Android集成Banner,参考文档横幅广告

代码示范#

// 创建广告位
TPBanner mTpBanner = new TPBanner(this);
if (mTpBanner.getParent() != null) {
((ViewGroup) mTpBanner.getParent()).removeView(mTpBanner);
}
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
RelativeLayout relativeLayout = new RelativeLayout(mContext);
// 设置横幅广告弹出位置 底部居中
relativeLayout.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM);
relativeLayout.addView(mTpBanner);
relativeLayout.setLayoutParams(params);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
// 设置距离底部间隔100 (可选)
layoutParams.bottomMargin = 100;
((Activity) mContext).addContentView(relativeLayout, layoutParams);
//设置监听
mTpBanner.setAdListener(new BannerAdListener() {
@Override
public void onAdLoaded(TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdLoaded: ");
}
@Override
public void onAdClicked(TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdClicked: ");
}
@Override
public void onAdImpression(TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdImpression: ");
}
@Override
public void onAdShowFailed(TPAdError tpAdError, TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdShowFailed: ");
}
@Override
public void onAdLoadFailed(TPAdError tpAdError) {
Log.i(TAG, "onAdLoadFailed: ");
}
@Override
public void onAdClosed(TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdClosed: ");
}
});
// 请求广告。 AdUnitId是广告位Id,TradPlus 后台创建
mTpBanner.loadAd("AdUnitId");