如何在Swift中预加载banner iAds?
问题描述:
我只是将iAds集成到我的应用程序中,他们完美地工作。唯一的问题是,广告出现之前网页会有延迟。我希望在应用启动后立即预装广告。我有一个中等长方形广告和一个普通横幅广告(在应用中的不同视图中)。如何在Swift中预加载banner iAds?
中矩形被装载在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之前显示的视图,您可以随时尝试在那里加载广告。为此,您可能需要创建一个独立的单例类来保存所有的iAd代码,然后从您需要显示的所有位置访问该类,或尝试预加载iAd。
我在这两者之前都有看法。我会研究这个单身的事情。你碰巧手头有一个有用的资源吗? – Andrew