Wie Um Zu Überprüfen, Ob Der Benutzer Bereits In-App-Kauf? Um Zu Bestimmen, Ihre Zugriffsebene/Rechte

Habe ich eine einfache app, die mit einen non-consumable in-app-Kauf-option.

Aus meiner ersten view-controller habe ich ein einziges "enter" - Taste.

Diese Schaltfläche, sendet eine "freie" Nutzer (nicht non-consumable Kauf) zu einem TabBarController "A" und eine Reihe von Ansichten und 'bezahlt' Benutzer zu den anderen TabBarController "B" einen anderen Satz von Ansichten. Diese Ansichten werden sich nie kreuzen.

Ich würde gerne prüfen, ob mein code ist in der Lage zu unterscheiden, effektiv, ob ein Benutzer hat den in-app-Kauf oder sonst.

Hier ist mein code:

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)
   }


}

}

Vielen Dank im Voraus für alle Antworten, Kommentare oder Gedanken 🙂

Schreibe einen Kommentar