我已从 iAd 切换到 adMob,但在集成横幅广告时遇到了困难。
当我运行代码时,出现 fatal error :展开可选值时意外发现 nil
这是我的代码:
import GoogleMobileAds
class GameViewController: UIViewController, GADBannerViewDelegate {
override func viewDidLoad() {
super.viewDidLoad()
let scene = GameScene(size: view.bounds.size)
let skView = view as! SKView
skView.showsFPS = false
skView.showsNodeCount = false
skView.ignoresSiblingOrder = true
scene.scaleMode = .ResizeFill
skView.presentScene(scene)
print("Google Mobile Ads SDK version: " + GADRequest.sdkVersion())
var banner: GADBannerView!
banner.delegate = self
banner.adUnitID = " ca-app-pub-xxxxxxxxxxx/xxxxxxxxxx" //crashing on this line
banner.loadRequest(GADRequest())
}
}
我觉得我已经从 AdMob 网站正确遵循了这一点,但我很难弄清楚这个错误来自何处。其他人也遇到过这个问题吗?
最佳答案
您还没有在任何地方初始化您的
banner
,因此如果您想在界面构建器中创建它,您应该为其创建一个@IBOutlet
,或以编程方式初始化它。这很可能是您的应用崩溃的原因。var banner: GADBannerView! banner = GADBannerView(frame: self.view.frame) // Initialized, with fullscreen frame
adUnitID
不应以空格开头。
关于swift - 集成adMob : Unexpectedly found nil while unwrapping an optional value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35259640/