我已经以这种方式构建了我的应用程序,一切似乎都在或多或少地起作用。在听说臭名昭着的低iAd填充率后,我认为这是最好的方法,但我尝试使用谷歌搜索,我无法找到其他人在他们的应用程序中实现广告的记录。这是否违反了服务条款?
答案 0 :(得分:10)
为什么不使用Adwhirl。它伟大的sdk使您能够完全满足您的需求。您可以为不同的广告网络设置优先级设置,如果您发现一个网络性能优于其他网络,则可以动态更改。
它处理基于请求失败或优先级显示广告的所有逻辑,而无需担心。您所做的就是创建一个adwhirl视图并请求广告。 Adwhirl完成剩下的工作,包括适当的清爽。如果iAd第一次失败,然后显示一个admob,但下一个iAd成功加载,则会显示而不是admob,假设您将iAd设置为更高优先级的网络。
答案 1 :(得分:3)
您是否通过将可见设置为NO来隐藏ADBannerView?使用ADBannerView,如果将可见设置为NO,则会停止询问广告。要“隐藏”ADBannerView,您需要将其转换到屏幕外的某个位置。
答案 2 :(得分:3)
您可以使用这些控件来显示iAd和adMob
或者这是一个很好的tut,一步一步解释
http://mobile.tutsplus.com/tutorials/iphone/supplementing-iad-placement-with-admob/
答案 3 :(得分:1)
我有iAds和Admob。
我强烈建议首先加载iAd,如果你没有广告使用admob。如果你收到广告,iAd的有效每千次展示费用会高于admob。请记住,iAd会每30秒刷新一次,因此多次调用未获取广告的方法。
我的应用程序已经获得批准,你可以获得它,Octopus Oracle。 http://kurl.ws/Ay
答案 4 :(得分:1)
您可以使用AdWhirl 它最好的教程就在这里 Tutorial
答案 5 :(得分:0)
我最终采用了这个策略:
首先,我从故事板创建了2个出口,一个用于JFileChooser myFileChooser = new JFileChooser();
if(myFileChooser.getCurrentDirectory().getPath().equals("C:/")){
System.out.println("saving file here is not allowed");
}
,另一个用于ADBannerView
GADBannerView
在viewDidLoad中,你可以这样做:
@IBOutlet weak var iadBannerView: ADBannerView!
@IBOutlet weak var adMobBannerView: GADBannerView!
所以在这里您隐藏了两个横幅(如果您愿意,可以直接在故事板中进行)。然后你等待35秒才能显示谷歌广告。因此,在显示Google广告之前,您基本上希望了解iAD是否可用。
这是用于显示Google横幅的方法:
override func viewDidLoad() {
super.viewDidLoad()
self.iadBannerView.hidden = true
self.adMobBannerView.hidden = true
self.iadBannerView.delegate = self
NSTimer.scheduledTimerWithTimeInterval(35, target: self, selector: Selector("dispalyGoogleBanner"), userInfo: nil, repeats: false)
}
因此,在显示Google横幅之前,我们会确保尚未显示iAD横幅和adMob横幅。如果是这种情况,那么我们可以发送请求以显示ADMob横幅。
这里是我 //MARK: - Google banner
func dispalyGoogleBanner() {
if !self.isDisplayIAD && !idDisplayADMob {
idDisplayADMob = true
self.adMobBannerView.adUnitID = kAdUnitID
self.adMobBannerView.hidden = false
self.adMobBannerView.rootViewController = self
self.adMobBannerView.loadRequest(GADRequest())
}
}
ADBannerViewDelegate
我基本上对这些代表做了什么,检查iAD横幅是否可用,如果是这样,那么我将隐藏adMob横幅。如果iAD完成显示广告,那么我将调用ADMob横幅广告,请参阅func bannerViewDidLoadAd(banner: ADBannerView!) {
self.iadBannerView = banner
self.iadBannerView.hidden = false
self.adMobBannerView.hidden = true
idDisplayADMob = false
self.view.layoutIfNeeded()
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError
error: NSError!) {
println(error)
isDisplayIAD = false
self.iadBannerView.hidden = true
self.dispalyGoogleBanner()
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
self.iadBannerView = banner
self.iadBannerView.hidden = true
isDisplayIAD = false
dispalyGoogleBanner()
}
func bannerViewWillLoadAd(banner: ADBannerView!) {
//remove the google banner if displayed
isDisplayIAD = true
self.iadBannerView.hidden = false
self.adMobBannerView.hidden = true
idDisplayADMob = false
self.view.layoutIfNeeded()
}
您可以轻松地调整此逻辑以实现您的实施。