在纵向方向上获取横向AdMob插页式广告
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在纵向方向上获取横向AdMob插页式广告相关的知识,希望对你有一定的参考价值。
我正在开发的游戏应用程序使用传感器管理其方向,并且始终处于纵向模式,使用onCreate()
方法中的这行代码:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
我已经实现了AdMob
非页内广告,但它们似乎总是以纵向模式显示,可能是因为应用程序认为它处于纵向模式,因为我正在管理游戏代码中的屏幕旋转。
由于我使用传感器,我确切地知道我的设备在哪个方向,我有没有办法从AdMob
请求横向广告?
答案
如果应用程序仍然调用viewWillTransition
函数,那很容易。
只需覆盖该函数并正常使用Interstitial Ads guideline from Google中的createAndLoadInterstitial。
每次旋转设备时,都会请求新的插页式广告。但是当屏幕上已显示插页式广告时,它无效。
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
interstitial = createAndLoadInterstitial()
}
func createAndLoadInterstitial() -> GADInterstitial {
interstitial = GADInterstitial(adUnitID: GlobalConstants.interstitialAdUnitID)
interstitial.delegate = self
interstitial.load(GADRequest())
return interstitial
}
作为一方的提示。引入一个在调试(测试广告)和发布(生产广告)之间动态切换AdUnitID的类:
class GlobalConstants {
static var interstitialAdUnitID: String {
#if DEBUG
return "ca-app-pub-3940256099942544/4411468910"
#else
return "Production-AdUnitID"
#endif
}
}
以上是关于在纵向方向上获取横向AdMob插页式广告的主要内容,如果未能解决你的问题,请参考以下文章