Take a look at this tutorial :-) herhangi bir cevap, yorum veya düşünceler için şimdiden
import UIKit
import StoreKit
class MainMainViewController: UIViewController, UIScrollViewDelegate, SKProductsRequestDelegate, SKPaymentTransactionObserver {
let defaults = NSUserDefaults.standardUserDefaults()
var product_id: NSString?;
...
override func viewDidLoad() {
product_id = "some.iap.id";
SKPaymentQueue.defaultQueue().addTransactionObserver(self)
super.viewDidLoad()
}
@IBAction func Enter(sender: AnyObject) {
//Check if product is purchased
if (defaults.boolForKey("purchased")){
print("User has purchased da goods!")
// Grant or otherwise full access based on whether user has purchased/not purchased.
// Goto TabBarController A - FULL Access:
let vc = self.storyboard!.instantiateViewControllerWithIdentifier("TabBarControllerPaid") as! TabBarControllerPaid
self.presentViewController(vc, animated: true, completion: nil)
}
else if (!defaults.boolForKey("purchased")){
print("user has NOT purchased yet")
// Goto TabBarController B - PARTIAL Access:
let vc = self.storyboard!.instantiateViewControllerWithIdentifier("TabBarControllerFree") as! TabBarControllerFree
self.presentViewController(vc, animated: true, completion: nil)
}
}
}
Çok teşekkürler, "Satın Alınan Öğeler" bölümünde:
İşte benim kodudur.
Satın alınan öğelerin kaydını nasıl tutacağınızı gösterir (ve bu eğiticiyi yakından izliyorsanız, evet NSUserDefaults
'u kullanırsınız) ve ayrıca uygulama silinirse önceki satın alma işlemlerinin nasıl geri yükleneceğini öğreneceksiniz. Bir kullanıcının yeni cihazına taşındı.
Yukarıda kodunuzda "defaults.boolForKey("purchased")
" görüyorum. Görebildiğim bu kodla ilgili en büyük sorun, yalnızca bir öğenin satın alınmasına izin vermesidir ("satın alınan" booleanın NSUserDefaults
'da var olması veya olmaması).
Harika eğitim - bir daha fazla akım için sorun değil! Bir gün yaşlı inanıyorum! Tüm kodumu bu içeriğe göre değiştirebilirim. İkinci paranızın sadece bir yan notu - sadece bir sarf malzemeye sahip olmak istemediğimde, sadece yukarıdaki koduma bağlı kalmam mı? Bir IAP ürün uygulaması için bu şekilde iyi mi? Uygulamamın, kullanıcının İnternet bağlantısı yoksa ürünü satın alıp almadığını belirlemesi mümkün mü? İnanıyorum ki? –