0

我已经整合了 Facebook 受众网络来展示广告,

代码:

if (fbInterstitialAd.isAdValid == YES) {
    [fbInterstitialAd showAdFromRootViewController:viewController];
}

但在展示广告时出现此崩溃:

*** Terminating app due to uncaught exception 'InvalidOperationException', reason: 'showAdFromRootViewController may only be called once'

笔记:

4

2 回答 2

2

我也想多次展示插页式广告,所以这就是我的方式。

当插页式广告确实显示时,将调用“interstitialAdWillLogImpression”委托。我会及时制作新的插页式广告。

func interstitialAdWillLogImpression(interstitialAd: FBInterstitialAd) {
    fbInterstitialAd = FBInterstitialAd(placementID: "your_placement_id")
    fbInterstitialAd.delegate = self
    fbInterstitialAd.loadAd()
}
于 2016-09-04T14:07:59.690 回答
1

目前,FBInterstitialAd 仅限于展示一次。如果应用程序尝试多次显示它,则会抛出“InvalidOperationException”。

首先,请在方法 '[fbInterstitialAd showAdFromRootViewController:viewController];' 周围添加 try/catch 以避免崩溃。

其次,验证您的集成并确保对象“fbInterstitialAd”不会多次显示。

于 2016-04-13T17:37:20.980 回答