2015-01-12 4 views
1

Так что мой код для показа межстраничного iAd работает, но он медленно загружает объявления. Когда пользователь находится на моей сцене GameOver, и они нажимают на повторную попытку, он выполняет случайную проверку числа, и если число соответствует тому, которое я сказал, оно использует NSNotificationCenter для загрузки моего промежуточного iAd.Как легко перейти на межстраничный iAd в Swift?

func interstitialAdChecker(){ 
    var randomAd = Int(arc4random() % 3) 
    println(randomAd) 

    if randomAd == 1 { 
     NSNotificationCenter.defaultCenter().postNotificationName("showInterstitialAdsID", object: nil) 
    } 
} 

И в моей игре над сценой, когда пользователь нажимает повтор, это код для переходящих сцен:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) { 

    for touch: AnyObject in touches { 
     let location = touch.locationInNode(self) 

     if self.nodeAtPoint(location) == self.replayButton { 
      gameOverLogo.removeFromParent() 
      replayButton.removeFromParent() 
      yourScore.removeFromParent() 
      highScore.removeFromParent() 
      rateButton.removeFromParent() 
      scoreBackground.removeFromParent() 

      interstitialAdChecker() 

      var scene = InstructionScene(size: self.size) 
      let skView = view as SKView! 
      skView.ignoresSiblingOrder = true 
      scene.anchorPoint = CGPoint(x: 0.5, y: 0.5) 
      scene.scaleMode = .ResizeFill 
      scene.size = skView.bounds.size 
      skView.presentScene(scene, transition: transition) 
     } 
    } 
} 

Существует 1 - 3 вторая задержка между моментом, когда нагрузка InstructionScene и когда отображается Interstitial iAd, и кто-нибудь знает, как сделать его плавным сползанием со дна AS SOON по мере повторения попыток пользователя? Задержка в 1 - 3 секунды означает, что пользователь может начать игру, и у вас появится рекламный всплывающий игровой процесс, который не подходит. Благодаря!

+0

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

+0

Я сделал это, но все еще есть отставание, когда объявление отображается после перехода к сценам. Я видел приложения, в которых вы повторили попытку повторного запуска, появилось межстраничное объявление. – riverhawk

ответ

0

Вы используете симулятор или фактическое устройство для тестирования? Если вы используете симулятор, может возникнуть отсрочка показа объявлений из моего опыта.

Если вы тестируете на своем устройстве, вам следует попытаться задержать переход к сцене, пока пользователь insterstitialAd не будет обработан пользователем. Вы можете установить bool, когда объявление показывается, чтобы вы не переходили. Затем, когда пользователь отменяет объявление, происходит переход.

+0

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

+7

Не могли бы вы поделиться решением? Благодаря! –

Смежные вопросы