你如何在Swift中预加载横幅iAd?

时间:2015-07-18 23:16:35

标签: ios swift iad

我只是将iAd集成到我的应用中,它们完美运行。唯一的问题是广告出现之前页面有延迟。我想在应用启动后立即预加载广告。我有一个中矩形广告和一个常规横幅广告(在应用中的不同视图上)。

在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

如何做到这一点?

1 个答案:

答案 0 :(得分:2)

由于应用程序必须从iAd CDN获取广告,因此总会有一点延迟。现在,如果您有一个在ReadingVC和LibraryVC之前显示的视图,您可以随时尝试在那里加载广告。要做到这一点,您可能需要创建一个单独的单例类来保存所有iAd代码,然后从您需要显示或尝试预加载iAd的所有位置访问该类。