Итак, я нашел два способа отображения рекламы Google в моей игре SpriteKit ... Оба способа работают, но я обеспокоен тем, что один из них более эффективен и т. Д.Лучший способ отображения GADBannerView в SpriteKit/Swift
В моей игре есть только 1 ViewController
и 1 GameScene
. Отличие от двух реализаций заключается в том, когда и где они созданы.
Оба требуют:
import GoogleMobileAds
var googleBannerView: GADBannerView!
Это было так, как я реализовал его первый:
в: GameViewController.swift
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
googleBannerView = GADBannerView(adSize: kGADAdSizeSmartBannerPortrait)
googleBannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
googleBannerView.rootViewController = self
let request: GADRequest = GADRequest()
googleBannerView.loadRequest(request)
googleBannerView.frame = CGRectMake(0, view.bounds.height - googleBannerView.frame.size.height, googleBannerView.frame.size.width, googleBannerView.frame.size.height)
self.view.addSubview(googleBannerView!)
if let skView = self.view as? SKView { //cast root as SKView
if skView.scene == nil {
//create and present gameScene
}
}
}
Это второй способ:
в : GameScene.swift
override func didMoveToView(view: SKView) {
googleBannerView = GADBannerView(adSize: kGADAdSizeSmartBannerPortrait)
googleBannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
googleBannerView.rootViewController = self.view?.window?.rootViewController
let request: GADRequest = GADRequest()
googleBannerView.loadRequest(request)
googleBannerView.frame = CGRectMake(0, view.bounds.height - googleBannerView.frame.size.height, googleBannerView.frame.size.width, googleBannerView.frame.size.height)
self.view?.addSubview(googleBannerView!)
addChild(worldNode) //make whole world a node, create game nodes, in worldNode
switchToMainMenu() //go to menu menu
}
Я думаю, что единственное различие в том, как установить rootViewController
, и учитывая мою игру только имеет 1 ViewController, оба работают ...
Какой бы лучше реализация?
Я принял правильное решение для изменения, затем ах. Спасибо, что подтвердили. – Reanimation
вы также можете использовать помощник, такой как тот, который я надел github. Наличие всего кода объявления в viewController также довольно беспорядочно. https://github.com/crashoverride777/Swift-2-iAds-and-AdMob-Helper – crashoverride777
Вы комбинируете iAD и admob? вы можете сделать iAd прямо через admob – Knight0fDragon