ios - 你如何在 Swift 中预加载横幅 iAds?

标签 ios swift iad

我刚刚将 iAds 集成到我的应用程序中,它们运行良好。唯一的问题是在广告出现之前页面上有延迟。我想在应用启动后立即预加载广告。我有一个中长方形广告和一个常规横幅广告(在应用程序的不同 View 中)。

像这样在 ReadingVC.swift 的 viewDidLoad() 上加载中矩形:

var rectangleAdView = ADBannerView(adType: ADAdType.MediumRectangle)

// Show banner ad
rectangleAdView?.delegate = self

具有以下功能:

func bannerViewDidLoadAd(banner: ADBannerView!) {
    println("bannerViewDidLoadAd - Ad shown on app")
    self.view.addSubview(banner)
    self.view.layoutIfNeeded()
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError
    error: NSError!) {
        banner.removeFromSuperview()
        self.view.layoutIfNeeded()
}

常规横幅以相同的方式加载到 LibraryVC.swift 的 viewDidLoad() 上,只是使用 ADAdType.Banner 而不是 ADAdType.MediumRectangle

如何做到这一点?

最佳答案

总会有一点延迟,因为应用程序必须从 iAd CDN 抓取广告。现在,如果您有一个在 ReadingVC 和 LibraryVC 之前显示的 View ,您总是可以尝试预先加载广告。为此,您可能需要创建一个单独的单例类来保存所有 iAd 代码,然后从您需要显示或尝试预加载 iAd 的所有位置访问该类。

关于ios - 你如何在 Swift 中预加载横幅 iAds?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31496486/

相关文章:

swift - 优先考虑 iAd 而非 adMob SpriteKit/Swift

iOS:在对新的 viewController 执行 segue 时添加插页式广告?

ios - 如何保护为 iPhone 等开发的应用程序不被转售

Swift - 如何在函数 LocationManager() 之外获取纬度和经度值

ios - 如何从包含空格的字符串创建 NSURL?

ios - 如何在 Swift 3.0 ios 10.0 中将 iCloud 同步与 Core Data 集成

arrays - 字符串数组到 Int8 数组字节类型转换

iphone - 实现 AdWhirl + iAD

ios - 在 swift 上使用带有 SKLabelNode 的 runAction 造成延迟

ios - 获取 UITextView 上特定行的文本