【发布时间】:2016-02-05 04:34:56
【问题描述】:
我正在关注这个tutorial
到目前为止,当我单击按钮时,它已经开始工作了。但是,我似乎无法让它在 viewDidLoad 上显示插页式广告。
这就是我所拥有的:
override func viewDidLoad() {
super.viewDidLoad()
self.interstitialAd = GADInterstitial(adUnitID: "ADUnitID")
let request = GADRequest()
// Requests test ads on test devices.
request.testDevices = ["2077ef9a63d2b398840261c8221a0c9b"]
self.interstitialAd.loadRequest(request)
self.interstitialAd = reloadInterstitialAd()
}
控制台不断向我显示:
2016-02-04 22:27:51.855 GoogleAdMobTutorial[3394:56415] 要在此设备上获取测试广告,请调用:request.testDevices = @[ kGADSimulatorID ];
当我点击按钮时:
@IBAction func showAd(sender: AnyObject) {
if self.interstitialAd.isReady {
self.interstitialAd.presentFromRootViewController(self)
}
}
广告出现了。当我关闭广告时,我会在控制台中看到:
2016-02-04 22:29:16.661 GoogleAdMobTutorial[3394:56743] 请求错误:不会发送请求,因为已使用插页式对象。
这是我关闭广告时调用的函数:
func interstitialDidDismissScreen(ad: GADInterstitial!) {
self.interstitialAd = reloadInterstitialAd()
}
问题
为了清楚起见:如何在视图控制器加载时显示插页式广告?
【问题讨论】:
-
从您的
interstitialDidDismissScreen中删除代码并发送新请求,let request = GADRequest() // Requests test ads on test devices. request.testDevices = ["2077ef9a63d2b398840261c8221a0c9b"] self.interstitialAd.loadRequest(request) -
@DanielStorm 那里的广告代码是来自 Google 的默认代码。无需删除。