Help Center/Details/

iOS模版渲染插屏广告

简介

模板渲染插屏:使用场景为应用功能自然体验中断时,例如暂停视频播放,游戏关卡之间。插屏广告不应突然出现,不应干扰用户使用应用的正常流程,例如应用加载,退出应用或者游戏过程中。

支持的广告尺寸:1:1、2:3、3:2 三种尺寸
注意:⚠️⚠️⚠️ 请求模版插屏广告,高度值不能设置为0⚠️⚠️⚠️

权限

模板渲染插屏: 默认提供

为避免渲染过程产生广告视图形变,插屏广告的请求尺寸务必和媒体平台配置相同尺寸

模版插屏广告

使用说明

模版插屏使用BUNativeExpressInterstitialAd对象调用loadAdData请求广告,使用BUNativeExpressInterstitialAd对象调用showAdFromRootViewController:展示广告,通过设置BUNativeExpresInterstitialAdDelegate代理,获取广告、展示、点击、关闭等回调。

创建广告位对象、请求广告

BUNativeExpressInterstitialAd

请求广告时需要传入广告位对象,广告位对象创建时必须传入广告位ID

必传参数:

字段定义 字段名称 字段类型 备注
slotID 代码位 NSString 代码位ID
adSize 广告尺寸 CGSize 广告尺寸,务必和媒体平台配置相同尺寸

使用BUNativeExpressInterstitialAd创建对象,使用BUNativeExpressInterstitialAd调用loadAdData请求广告

self.interstitialAd = [[BUNativeExpressInterstitialAd alloc] initWithSlotID:slotID adSize:CGSizeMake(width, height)];
self.interstitialAd.delegate = self;
[self.interstitialAd loadAdData];

接收广告加载结果

BUNativeExpresInterstitialAdDelegate

回调方法 注释
nativeExpresInterstitialAd:didFailWithError 返回的错误码(error)表示广告加载失败的原因,所有错误码详情请见链接。Link
nativeExpresInterstitialAdRenderFail 渲染失败,网络原因或者硬件原因导致渲染失败,可以更换手机或者网络环境测试。建议升级到穿山甲平台最新版本
nativeExpresInterstitialAdDidLoad 广告素材物料加载成功
nativeExpresInterstitialAdRenderSuccess 渲染成功

BUNativeExpresInterstitialAdDelegate回调说明

回调方法 注释
nativeExpresInterstitialAdDidLoad: 广告物料加载成功
nativeExpresInterstitialAd: didFailWithError: 返回的错误码(error)表示广告加载失败的原因,所有错误码详情请见链接。Linkhttps://ad.oceanengine.com/union/media/doc?id=5de4cc6d78c8690012a90aa5)
nativeExpresInterstitialAdRenderSuccess: 渲染成功回调
nativeExpresInterstitialAdRenderFail: error: 渲染失败,网络原因或者硬件原因导致渲染失败,可以更换手机或者网络环境测试。建议升级到穿山甲平台最新版本
nativeExpresInterstitialAdWillVisible: 模版插屏广告即将展示
nativeExpresInterstitialAdDidClick: 点击回调
nativeExpresInterstitialAdWillClose: 广告即将关闭回调
nativeExpresInterstitialAdDidClose: 关闭回调
nativeExpresInterstitialAdDidCloseOtherController: interactionType: 此回调在广告跳转到其他控制器时,该控制器被关闭时调用interactionType:此参数可区分是打开的appstore/网页/详情页面等等

通过设置BUNativeExpresInterstitialAdDelegate代理,获取广告、展示、点击、关闭等回调。其他代理方法可参见demoBUDExpressInterstitialViewController#pragma ---BUNativeExpresInterstitialAdDelegate部分

展示广告

调用showAdFromRootViewController:方法展示插屏广告,此处需要传入当前展示的页面。一定要设置rootViewController,即展示广告和跳转落地页需要的viewController,此处建议开发者在收到nativeExpresInterstitialAdRenderSuccess回调后展示插屏广告,可保证播放流畅和展示流畅,用户体验更好。

展示插屏视频广告

if (self.interstitialAd) {
   [self.interstitialAd showAdFromRootViewController:self];
}

展示时机

在收到nativeExpresInterstitialAdRenderSuccess回调后再进行广告的展示,可保证播放流畅和展示流畅,用户体验更好。

- (void)nativeExpresInterstitialAdRenderSuccess:(BUNativeExpressInterstitialAd *)interstitialAd {
 //此回调方法中进行广告的展示,可保证播放流畅和展示流畅,用户体验更好。
}

注意事项

  1. 必须要设置rootViewController,用来处理广告跳转。SDK里所有的跳转均采用present的方式,请确保传入的rootViewController不能为空且没有present其他的控制器,否则会出现presentedViewController已经存在而导致present失败。
  2. 为保证播放流畅和展示流畅,用户体验更好,在收到nativeExpresInterstitialAdRenderSuccess回调后进行广告的展示
  3. 判断广告是否有效直接使用self.interstitialAd判断即可

资源

详细接入可参照Demo中的BUDExpressInterstitialViewController类,广告加载请求部分可参照loadInterstitialWithSlotID方法,广告展示部分可参照showInterstitial方法

Did the content solve your problem?
Contact us