【问题标题】:iAds banner is not appearingiAds 横幅未出现
【发布时间】:2015-12-11 12:53:39
【问题描述】:

我添加了iAd framework。我将iAdBannerView 拖放到视图控制器上。然后我为横幅设置约束。接下来,我将横幅连接到ViewController.swift 文件。这样做之后,我写了这段代码:-

在文件顶部:

import iAd
class ViewController: UIViewController, UITextFieldDelegate, ADBannerViewDelegate 

{

创建出口:

@IBOutlet var adBannerView: ADBannerView!

在 viewDidLoad() 中:

self.canDisplayBannerAds = true
self.adBannerView.delegate = self
self.adBannerView.hidden = true

接下来我创建了这两个函数:

func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {

    return true

}

func bannerViewDidLoadAd(banner: ADBannerView!) {

    adBannerView.hidden = false
}

这就是我所做的一切。我没有在 iTunes 连接上填写任何表格,也没有导入任何其他与 iAds 相关的框架。这就是我所做的一切。

但是,当我在模拟器上运行应用程序时,iAd 横幅并未出现。它甚至没有显示 Apple 的广告。什么都没有。它只是与应用程序融为一体。我在手机上运行了该应用程序,但仍然没有。我将应用程序上传到 AppStore,当我从 AppStore 下载我的应用程序时,我仍然看不到任何内容。知道这里出了什么问题吗?在此先感谢:)

【问题讨论】:

  • 你的设备或模拟器有问题。在印度和其他一些国家/地区,iAd 无法在设备上运行,但它肯定可以在模拟器上运行
  • @vaibby 我在设备和模拟器上都有问题
  • 尝试处理您在 adBannerView 上设置的约束。还要检查视图高度/宽度
  • @vaibby 我尝试打印横幅的框架,它落在视图的框架内,就在它应该在的位置。但由于某种原因它没有出现。
  • 您还应该添加方法func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) 并打印错误,这样您就知道iAd 抱怨了什么。正如 vaibby 已经建议的那样,请检查广告横幅视图的尺寸 - 另请参阅我的回答 stackoverflow.com/a/33945790/1396265

标签: ios xcode swift iad adbannerview


【解决方案1】:

创建一个单独的函数并将其输入viewDidLoad(它有助于组织)。完成后输入这个。

func iAD() {

    bannerView = ADBannerView(adType: .Banner)
    bannerView.translatesAutoresizingMaskIntoConstraints = false
    bannerView.delegate = self
    bannerView.hidden = true
    view.addSubview(bannerView)

    let viewsDictionary = ["bannerView": bannerView]
    view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[bannerView]|", options: [], metrics: nil, views: viewsDictionary))
    view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:[bannerView]|", options: [], metrics: nil, views: viewsDictionary))
}

func bannerViewDidLoadAd(banner: ADBannerView!) {
    bannerView.hidden = false
}

func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
    bannerView.hidden = true
}

然后当你打开它时你应该得到something like this

【讨论】:

  • 它没有用。什么都没有出现。横幅未能收到广告。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-29
  • 1970-01-01
  • 1970-01-01
  • 2011-11-08
  • 1970-01-01
  • 2018-11-08
相关资源
最近更新 更多