2016-04-23 140 views
0

我正在尝试将AdMob添加到我的应用中。 我的应用程序构建于: UITabBarController with 1. UIViewController; 2. UITableViewController; 3. UIViewController; 4. UIViewController。Swift&Admob:无广告展示

我实际上是在3. UIViewController中从Admob添加横幅广告。

我使用的代码:

@IBOutlet weak var amobBan: GADBannerView! 
[•••] 
amobBan.delegate = self 
amobBan.adUnitID = "ca-app-pub-xxxxxxx" // I used mine in other apps : it works. 
amobBan.rootViewController = self // NB: I also tried with tabBarController istead "self" 
amobBan.loadRequest(GADRequest()) 

而且它不工作:不显示广告。 所以我用这个函数:

func adView(bannerView: GADBannerView!, 
      didFailToReceiveAdWithError error: GADRequestError!) { 
    print("adView:didFailToReceiveAdWithError: \(error.localizedDescription)") 
} 

而且我得到了这样的输出: 的AdView:didFailToReceiveAdWithError:请求错误:没有广告显示。

我真的认为这是由于amobBan.rootViewController =自我,因为广告当我设置3的UIViewController作为初始的ViewController到故事板显示。

我需要Swift中的答案。

+0

如果您正在测试您不应该得到和回广告,应该使用adUnitID进行测试。这里是一个类似的答案链接http://stackoverflow.com/a/32877187/4905076 – Lucho

+0

adUnitID没有改变,并在一个默认的项目或当我更改初始ViewController的广告显示... –

+1

你应该打电话' amob.loadRequest(GADRequest())'当控制器的视图可见时,也就是当您选择其选项卡时。如果你在viewController的viewDidLoad上调用它是不可见的,它将无法工作。 – Lucho

回答

1

迟到的答案,但这可能有助于其他。

如果您在使用谷歌旗帜广告(admob)时遇到了“无广告显示”的问题,那么通过将视图宽度320固定来解决该问题。我通过将广告宽度320和高度解决了我的问题50.

希望这会对其他人有所帮助。

0

谷歌的文档非常直截了当,所以也许你应该看看它。

https://developers.google.com/admob/ios/banner

乍一看我有一个问题:

你配置的AdMob在你的AppDelegate didFinishLaunching?

func application(_ application: UIApplication, 
     didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
    // Initialize the Google Mobile Ads SDK. 
    // Sample AdMob app ID: ca-app-pub-3940256099942544~1458002511 
    GADMobileAds.configure(withApplicationID: "YOUR_ADMOB_APP_ID") 

    return true 
    } 

一些技巧,比如PAYAL Umraliya说,规模是AdMob一个相当大的交易,所以一定要确保AD浏览有您所请求的广告的尺寸相同。