gpt4 book ai didi

ios - FBInterstitialAd showAdFromRootViewController 失败

转载 作者:行者123 更新时间:2023-11-29 12:00:41 24 4
gpt4 key购买 nike

我正在开发一款 iOS 应用,最近集成了适用于 iOS 的 Facebook SDK。当前使用版本 4.11.0 和 FBAdViewFBInterstitialAd适用于 Facebook Audience Network 广告。我的应用程序中的实现与 SDK 中提供的 AdUnitsSample 应用程序中的实现几乎相同。

FBAdView横幅广告很好,但我发现 FBInterstitialAd 存在严重问题.第一次显示插页式广告时,它工作正常并正确关闭。但是,如果用户点击广告(在应用程序内浏览器中显示网页或 App Store 页面),然后使用“取消”或“完成”按钮返回插页式广告,然后返回应用程序,它然后无法在后续请求中显示广告。

对于失败的请求,loadAd方法工作正常,interstitialAdDidLoad:委托(delegate)方法像往常一样被触发,但是当我调用 showAdFromRootViewController: 时除了控制台日志中的警告之外,没有任何反应:

Warning: Attempt to present <FBInterstitialAdInternal: 0x1626fc90> on <FBInterstitialAdInternal: 0x163488d0> whose view is not in the window hierarchy!

我能看到我的应用程序和 AdUnitsSample 应用程序之间的唯一区别是我的应用程序使用基于 XIB 的 UI 和 UINavigationController ,而示例应用程序使用 Storyboard 和 UITabBarController .我打给 showAdFromRootViewController: 的电话方法将我的 Root View Controller 作为参数发送,这是 UIViewController当时正在屏幕上显示。

从警告来看,Facebook 插页式广告似乎试图将自己显示在前一个插页式广告之上(FBInterstitialAdUIViewController 的子类),我不知道为什么。除非我能解决这个问题,否则我将不得不放弃插页式广告,这不是很好。

有什么想法吗?

更新:

在进一步试用 AdUnitsSample 应用程序之后,我发现了另一个不同之处。示例应用程序使用 ARC,但我的应用程序没有。果然,当我在示例应用程序中关闭 ARC 时,我遇到了完全相同的失败。不过,我不知道如何解决这个问题,而且由于我的应用程序依赖于一些不是为 ARC 构建的第 3 方库,所以我无法启用 ARC。

最佳答案

我们有同样的问题。

您应该将 -fobjc-arc 标志添加到您的 .mm 文件(使用 F InterstitialAd api)。

关于ios - FBInterstitialAd showAdFromRootViewController 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37153477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com