[英]Admob Interstitial ad not showing fullScreen on devices iOS
我使用 spritekit 制作了一个游戏,并按照谷歌提供的文档实现了 admob 插页式广告。 在模拟器中一切正常,广告在正确的时间按预期全屏显示。 问题是当我在我的 iPhone 6s 上运行时,广告没有填满整个屏幕,只有一小部分在黑屏上。 我已经在我的 gameviewController 上实现了所有的 admob 代码,并使用观察者在 gameScene 中调用它。
类 GameViewController:UIViewController {
var interstitial: GADInterstitial!
override func viewDidLoad() {
super.viewDidLoad()
interstitial = createAndLoadInterstitial()
NotificationCenter.default.addObserver(self, selector: #selector(GameViewController.showIntersticialAd), name: Notification.Name("showIntersticialAd"), object: nil)
if let view = self.view as! SKView? {
let scene = MenuScene(size: view.bounds.size)
scene.scaleMode = .aspectFill
view.presentScene(scene)
view.ignoresSiblingOrder = true
view.showsFPS = false
view.showsNodeCount = false
}
}
@objc func showIntersticialAd() {
if interstitial.isReady {
interstitial.present(fromRootViewController: self)
} else {
print("Ad not ready")
}
}
}
扩展 GameViewController: GADInterstitialDelegate {
func createAndLoadInterstitial() -> GADInterstitial {
let interstitial = GADInterstitial(adUnitID: "ca-app-pub-4828696079960529/6898313363")
interstitial.delegate = self
interstitial.load(GADRequest())
return interstitial
}
func interstitialDidDismissScreen(_ ad: GADInterstitial) {
interstitial = createAndLoadInterstitial()
}
}
我在互联网和 admob 文档中搜索了很多,但没有弄清楚为什么会发生这种情况。
@objc func showIntertialAds() { if !interstitial.isReady{ interstitial.load(GADRequest()) } if interstitial.isReady { interstitial.present(fromRootViewController:(UIApplication.shared.keyWindow?.rootViewController)!) } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.