2016-04-14 21 views
-1

Web sitemde heryerde spritekit oyunuma afişler eklemeye yönelik öğreticiler için arıyorum. Mesela şuna baktım: Swift SpriteKit iAd ama yeni hızlı 2 ve hızlı 1'e bağlı olarak probaly hatalarım var. Fakat spritekit oyunuma IAD eklemek için ne yapacağınızı açıklayabilir misiniz? Şimdiden teşekkür ederim.Spritekit Destekleme iAd

+0

Bunu okumak için ilginç bulabilirsiniz: https://developer.apple.com/news/?id=01152016a – Whirlwind

+0

Hey Dün yardımlarınız için tekrar teşekkürler. Bunun iAd'larla gerçekten emin misiniz? Bunu SO'da bahseden bir sürü insan gördüm. Şimdiye kadar haberler bu konuda çok belirsiz. Bazıları, yalnızca kendi uygulamalarını tanıtmak isteyen geliştiricileri etkilediğini söylüyor. Bazıları API'ler de dahil olmak üzere tümünün kapatıldığını söylüyor. Bazıları Haziran ayında otomatik bir servis aldığımızı söylüyor. Aslında şu anda Apple'ın sadece reklam göstermek için iAd’ları kullanan yeni uygulamaları reddedeceğini düşünüyoruz. (Yeni reklamlar oluşturmak için uygulama ağını kullanmamak). – crashoverride777

+0

iAD tamamen kapanıyor. – Loanb222

cevap

0

Bu kodu GameViewController'ınızda olduğundan emin olun. Bunu yeni test ettim ve manzara ve portre modu için çalışıyor.

class GameViewController: UIViewController, ADBannerViewDelegate { 

//-------------------- 
//-----iAd Banner----- 
//-------------------- 
var SH = UIScreen.mainScreen().bounds.height 
let transition = SKTransition.fadeWithDuration(0) 
var UIiAd: ADBannerView = ADBannerView() 

override func viewWillAppear(animated: Bool) { 
    let BV = UIiAd.bounds.height 
    UIiAd.delegate = self 
    UIiAd.frame = CGRectMake(0, SH + BV, 0, 0) 
    self.view.addSubview(UIiAd) 
} 

override func viewWillDisappear(animated: Bool) { 
    UIiAd.delegate = nil 
    UIiAd.removeFromSuperview() 
} 

func bannerViewDidLoadAd(banner: ADBannerView!) { 
    UIView.beginAnimations(nil, context: nil) 
    UIView.setAnimationDuration(0.5) // Time it takes the animation to complete 
    UIiAd.alpha = 1 // Fade in the animation 
    UIView.commitAnimations() 
} 

func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) { 
    UIView.beginAnimations(nil, context: nil) 
    UIView.setAnimationDuration(0.5) 
    UIiAd.alpha = 0 
    UIView.commitAnimations() 
} 

func showBannerAd() { 
    UIiAd.hidden = false 
    let BV = UIiAd.bounds.height 

    UIView.beginAnimations(nil, context: nil) 
    UIView.setAnimationDuration(0.5) // Time it takes the animation to complete 
    UIiAd.frame = CGRectMake(0, SH - BV, UIScreen.mainScreen().bounds.width, 0) 
    UIView.commitAnimations() 
} 

func hideBannerAd() { 
    UIiAd.hidden = true 
    let BV = UIiAd.bounds.height 

    UIView.beginAnimations(nil, context: nil) 
    UIView.setAnimationDuration(0.5) // Time it takes the animation to complete 
    UIiAd.frame = CGRectMake(0, SH + BV, UIScreen.mainScreen().bounds.width, 0) //Beginning position of the ad 
    UIView.commitAnimations() 
} 



//-------------------- 
//-----View Loads----- 
//-------------------- 
override func viewDidLoad() { 
    super.viewDidLoad() 
    //iAd Control 
    self.UIiAd.hidden = true 
    self.UIiAd.alpha = 0 
    NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(GameViewController.hideBannerAd), name: "hideadsID", object: nil) 
    NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(GameViewController.showBannerAd), name: "showadsID", object: nil) 
} 

Aşağıdakileri, sınıf bildirimlerinizin dışına ekleyin. Hangi sınıfa girdiğiniz önemli değil, küresel olduğu sürece onlara herhangi bir oyun sahnesinden erişebilirsiniz.

//------------- 
//-----Ads----- 
//------------- 
func showAds() { 
    NSNotificationCenter.defaultCenter().postNotificationName("showadsID", object: nil) 
} 
func hideAds() { 
    NSNotificationCenter.defaultCenter().postNotificationName("hideadsID", object: nil) 
} 

Ve sadece "showAds()" fonksiyonu veya "hideAds()" dediğimiz, belirli sahnenin veya her reklamları göstermek istediğinizde sonra bunları gizlemek için.

İlgili konular