2015-09-18 3 views
4

Я использовал тот же код для всех своих приложений для показа объявлений iAd, но после загрузки xcode 7 и преобразования моего кода в swift2 объявления больше не отображаются на моем устройстве или на симуляторе xcode , Кто-нибудь знает, какие изменения необходимо сделать?iAd not loading ads xcode7

import UIKit 
import SpriteKit 
import iAd 
class GameViewController: UIViewController, ADBannerViewDelegate { 

    var adBanner: ADBannerView? = ADBannerView() 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     adBanner?.delegate = self 

     adBanner?.hidden = true 

     self.canDisplayBannerAds = true  

    } 

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

    } 

    func bannerViewDidLoadAd(banner: ADBannerView!) { 
     adBanner?.hidden = false 

    } 

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

} 

ответ

0

Считаете ли вы, что сеть iAd не работает в данный момент? Всегда держите копию яблок собственного ОВР люкс под руку: https://developer.apple.com/library/ios/samplecode/iAdSuite_Storyboard/Introduction/Intro.html

Если их собственная нагрузка dont't, ваша не будет загружаться либо.

Сейчас я получаю это само сообщение об ошибке пояснительная:

NSLocalizedFailureReason=Ad inventory unavailable 

Надежда, что помогает.

0

Вы смешиваете два подхода. Существует два способа отображения баннеров iAd. Во-первых, просто сообщите iAd, что вы хотите показать баннеры на вашем контроллере просмотра, и пусть iAd сделает все остальное. Это делается путем вызова следующего метода:

self.canDisplayBannerAds = true  

Второй подход заключается в первую загрузить баннер, а затем добавить его вручную на ваш взгляд. Чтобы сделать это, вы первый инициализацию баннер с желаемым типом и установите его делегат:

var adBanner: ADBannerView? = ADBannerView(adType: ADAdType.Banner) 
adBanner?.delegate = self 

Затем, когда баннер загружается, мы должны добавить его к виду, например:

func bannerViewDidLoadAd(banner: ADBannerView!) { 
    self.view.addSubview(banner) 
} 

Не нужно менять свойство hidden перед баннером, который я добавил в супервизор.

+0

То, что я использовал, всегда работал для меня, и я уверен, что с использованием кода, который вы предоставили, также работает. Я попробовал это, чтобы посмотреть, не изменит ли что-нибудь, но не повезет. –

+0

Попробуйте установить рамку на свой баннер. – Adam