Пример #1
0
    void Start()
    {
        if (CoreXT.IsDevice)
        {
            // uncomment next line to change the encryption key
            // but if longer than 3 characters, which is 48 bits, check export laws
//			IAPXT.encryptionKey = "my encryption key";

            Log("can make payments: " + IAPXT.canMakePayments);
            Log("has bought premium: " + IAPXT.HasBought(premiumProductID));
            Log("has bought no ads: " + IAPXT.HasBought(noAdsProductID));
            Log("has bought coins: " + IAPXT.HasBought(coinsProductID));

            // subscribe to events
            IAPXT.InitializationCompleted += OnInitializationCompleted;
            IAPXT.InitializationFailed    += OnInitializationFailed;

            IAPXT.TransactionCompleted += OnTransactionCompleted;
            IAPXT.TransactionFailed    += OnTransactionFailed;

            IAPXT.DownloadUpdated += OnDownloadUpdated;

            IAPXT.RestorationCompleted += OnRestorationCompleted;
            IAPXT.RestorationFailed    += OnRestorationFailed;

            // initialize IAPXT with a list of product IDs
            IAPXT.Init(new string[] { premiumProductID, noAdsProductID, coinsProductID });
        }
    }
Пример #2
0
    void OnGUI()
    {
        KitchenSink.OnGUIBack();

        if (CoreXT.IsDevice)
        {
            GUILayout.BeginArea(new Rect(50, 50, Screen.width - 100, Screen.height / 2 - 50));

            GUILayout.Label("MUST first setup iTunesConnect and change IAPTest.cs with correct product IDs.");
            GUILayout.BeginHorizontal();

            if (GUILayout.Button("Buy Coins", GUILayout.ExpandHeight(true)))
            {
                // buy 2 coins
                IAPXT.Buy(coinsProductID, 2);
            }

            if (GUILayout.Button("Premium", GUILayout.ExpandHeight(true)))
            {
                // buy premium upgrade
                IAPXT.Buy(premiumProductID);
            }

            if (GUILayout.Button("No Ads", GUILayout.ExpandHeight(true)))
            {
                // buy no ads upgrade
                IAPXT.Buy(noAdsProductID);
            }

            if (GUILayout.Button("Restore", GUILayout.ExpandHeight(true)))
            {
                // restore all previously bought products
                IAPXT.RestoreCompletedTransactions();
            }

            if (GUILayout.Button("Store View", GUILayout.ExpandHeight(true)))
            {
                // show the store view in game
                IAPXT.ShowStore("571059586");
            }

            GUILayout.EndHorizontal();
            GUILayout.EndArea();
        }

        OnGUILog();
    }
Пример #3
0
    void OnInitializationCompleted(object sender, InitializationEventArgs e)
    {
        Log("InitializationCompleted");

        SKProduct product = IAPXT.GetProduct(premiumProductID);

        if (product == null)
        {
            Log("Error: Product not defined: " + premiumProductID);
            return;
        }

        Log("title: " + product.localizedTitle);
        Log("description: " + product.localizedDescription);
        var price = product.price;

        Log("price type: " + price.GetType());
        Log("price: " + price);
        Log("localized price: " + product.localizedPrice);
    }
Пример #4
0
 public override void RestoreCompletedTransactionsFailed(SKPaymentQueue queue, NSError error)
 {
     IAPXT._OnRestoreFailed(error);
 }
Пример #5
0
 public override void RestoreCompletedTransactionsFinished(SKPaymentQueue queue)
 {
     IAPXT._OnRestoreCompleted();
 }
Пример #6
0
 public override void UpdatedDownloads(SKPaymentQueue queue, object[] downloads)
 {
     IAPXT._OnUpdatedDownload(downloads);
 }
Пример #7
0
 public override void UpdatedTransactions(SKPaymentQueue queue, object[] transactions)
 {
     IAPXT._OnUpdatedTransactions(transactions);
 }