Android 开屏广告
Unity导出到Android Studio接入开屏
开屏广告目前支持导出到Android项目集成,如图:
开发者导出到Android Studio集成开屏,API介绍请参看Android开屏广告
接入代码示例
接入步骤参考以下代码,开发者需要根据实际需要调整。 mUnityPlayer = new UnityPlayer(this);
...
// 1、接入开屏,只需要在AS端初始化TradPlus SDK,AppId是应用Id,需要您去开发者后台添加APP
TradPlusSdk.initSdk(this, “AppId“);
// 2、初始化广告位。广告位ID在TradPlus后台创建。仅调用一次。
TPSplash tpSplash = new TPSplash(context, "AdUnitId");
FrameLayout frameLayout = new FrameLayout(UnityPlayerActivity.this);
frameLayout.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
// 3、设置回调监听(onAdClosed回调监听中remove传入容器)
tpSplash.setAdListener(new SplashAdListener() {
@Override
public void onAdClicked(TPAdInfo tpAdInfo) {}
@Override
public void onAdImpression(TPAdInfo tpAdInfo) {}
@Override
public void onAdClosed(TPAdInfo tpAdInfo) {
Log.i(TAG, "onAdClosed: ");
// 注意这里需要remove
frameLayout.removeAllViews();
}
@Override
public void onAdShowFailed(TPAdError var1, TPAdInfo var2) {}
@Override
public void onAdLoaded(TPAdInfo tpAdInfo, TPBaseAd tpBaseAd) {
//v1.1.2优化回调方式,一次loadAd对应一次loaded回调,不调用不回调。
}
@Override
public void onAdLoadFailed(TPAdError tpAdInfo) {}
});
// 4、设置每层广告源回调监听 (可选)
tpSplash.setAllAdLoadListener(new LoadAdEveryLayerListener() {...});
// 5、请求广告
tpSplash.loadAd(frameLayout);
mUnityPlayer.addView(frameLayout);
// 6、检查是否有可用广告(可做几秒倒计时判断,如5秒内无用广告直接跳转进入游戏界面)
if (tpSplash.isReady()) {
// 7、展示广告
tpSplash.showAd();
}
setContentView(mUnityPlayer);
...
mUnityPlayer.requestFocus();
iOS部分
开屏广 告
- 开屏广告是打开app的时候展示一个3-5s的全屏的广告
- 开屏广告分冷启动和热启动,冷启动时要尽可能提前开始加载广告,这样才能确保在进入app之前加载到并展示广告
- 热启动是app切换到后台,并没有真正的退出,这种情况下要能检测到并提前加载广告
- 开屏广告一般要配合app的启动页来使用,在加载的时间先给用户看启动页,等广告加载成功后展示广告,广告结束进入app内部
集成说明
注意: 需先将项目导入至Xcode后,再接入开屏。
1. 初始化
#import <TradPlusAds/TradPlusAdSplash.h>
//初始化广告位
self.splashAd = [[TradPlusAdSplash alloc] init];
//设置回调
self.splashAd.delegate = self;
//设置广告位ID
[self.splashAd setAdUnitID:@"您的广告位ID"];