- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一款 iOS 应用,最近集成了适用于 iOS 的 Facebook SDK。当前使用版本 4.11.0 和 FBAdView
和 FBInterstitialAd
适用于 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 插页式广告似乎试图将自己显示在前一个插页式广告之上(FBInterstitialAd
是 UIViewController
的子类),我不知道为什么。除非我能解决这个问题,否则我将不得不放弃插页式广告,这不是很好。
有什么想法吗?
更新:
在进一步试用 AdUnitsSample 应用程序之后,我发现了另一个不同之处。示例应用程序使用 ARC,但我的应用程序没有。果然,当我在示例应用程序中关闭 ARC 时,我遇到了完全相同的失败。不过,我不知道如何解决这个问题,而且由于我的应用程序依赖于一些不是为 ARC 构建的第 3 方库,所以我无法启用 ARC。
最佳答案
我们有同样的问题。
您应该将 -fobjc-arc 标志添加到您的 .mm 文件(使用 F InterstitialAd api)。
关于ios - FBInterstitialAd showAdFromRootViewController 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37153477/
我正在开发一款 iOS 应用,最近集成了适用于 iOS 的 Facebook SDK。当前使用版本 4.11.0 和 FBAdView和 FBInterstitialAd适用于 Facebook Au
我是一名优秀的程序员,十分优秀!