Ejemplo n.º 1
0
 public override void Test()
 {
     AN_LicenseChecker.CheckAccess((result) => {
         //We may fail with licence check, it's okay as long as PolicyCode is prsed corretly.
         AN_Logger.Log("result.PolicyCode: " + result.PolicyCode);
         SetResult(SA_TestResult.OK);
     });
 }
    private void Start()
    {
        SetStoreActiveState(false);
        m_Connect.onClick.AddListener(() =>
        {
            var observer = new UM_TransactionObserverExample();
            UM_InAppService.Client.SetTransactionObserver(observer);

            UM_InAppService.Client.Connect((connectionResult) => {
                if (connectionResult.IsSucceeded)
                {
                    //You are now connected to the payment service.
                    //Also all product's info are updated at this point from according to server values.
                    SetStoreActiveState(true);
                    PrintAvailableProductsInfo();
                    UM_DialogsUtility.ShowMessage("Connection Succeeded", "In App Service is now connected and ready to use!");
                }
                else
                {
                    //Connection failed.
                    UM_DialogsUtility.ShowMessage("Connection Failed", connectionResult.Error.FullMessage);
                }
            });
        });

        m_PurchaseConsumable.onClick.AddListener(() => { StartPayment(UM_ProductType.Consumable); });
        m_PurchaseNonConsumable.onClick.AddListener(() => { StartPayment(UM_ProductType.NonConsumable); });
        m_TestFailedPurchase.onClick.AddListener(() => { UM_InAppService.Client.AddPayment("non_existed_product_id"); });

        m_RestoreTransactions.onClick.AddListener(() =>
        {
            Restore();
        });

        m_CheckAccess.onClick.AddListener(() =>
        {
            AN_LicenseChecker.CheckAccess((result) => {
                if (result.IsSucceeded)
                {
                    UM_DialogsUtility.ShowMessage("Policy Code", result.PolicyCode.ToString());
                }
                else
                {
                    UM_DialogsUtility.ShowMessage("AN_LicenseChecker error", result.Error.FullMessage);
                }
            });
        });

        m_SubscriptionReplace.onClick.AddListener(SubscriptionReplace);
    }
Ejemplo n.º 3
0
#pragma warning restore 649

    void Start()
    {
        m_checkBillingAvalibility.onClick.AddListener(() => {
        });

        m_consumeButton.onClick.AddListener(() => {
            AN_Billing.Consume(AN_Billing.Inventory.Purchases[0], (SA_Result result) => {
                AN_Logger.Log("Consume result.IsSucceeded: " + result.IsSucceeded);
            });
        });

        m_purchaseButton.onClick.AddListener(() => {
            AN_Product product = new AN_Product("android.test.purchased", AN_ProductType.inapp);
            AN_Billing.Purchase(product, (result) => {
                AN_Logger.Log("Unity Purchase result.IsSucceeded: " + result.IsSucceeded);
                if (result.IsSucceeded)
                {
                    var purchase = result.Purchase;
                    AN_Logger.Log("purchase.OrderId: " + purchase.OrderId);
                    AN_Logger.Log("purchase.ProductId: " + purchase.ProductId);
                    AN_Logger.Log("purchase.PackageName: " + purchase.PackageName);
                    AN_Logger.Log("purchase.PurchaseState: " + purchase.PurchaseState);
                    AN_Logger.Log("purchase.PurchaseTime: " + purchase.PurchaseTime);
                    AN_Logger.Log("purchase.Signature: " + purchase.Signature);
                    AN_Logger.Log("purchase.Token: " + purchase.Token);
                    AN_Logger.Log("purchase.Type: " + purchase.Type);
                    AN_Logger.Log("purchase.DeveloperPayload: " + purchase.DeveloperPayload);
                    AN_Logger.Log("purchase.AutoRenewing: " + purchase.AutoRenewing);
                    AN_Logger.Log("purchase.OriginalJson: " + purchase.OriginalJson);
                    AN_Logger.Log("----------------------------------------------------");
                }
                else
                {
                    AN_Logger.Log("Unity  Purchase failed: " + result.Error.FullMessage);
                }
            });
        });

        m_connectButton.onClick.AddListener(() => {
            AN_Billing.Connect((result) => {
                AN_Logger.Log("Connect result.IsSucceeded: " + result.IsSucceeded);
                AN_Logger.Log("Connect result.IsInAppsAPIAvalible: " + result.IsInAppsAPIAvalible);
                AN_Logger.Log("Connect result.IsSubsAPIAvalible: " + result.IsSubsAPIAvalible);

                if (result.IsSucceeded)
                {
                    AN_Logger.Log("AN_Billing.Inventory.Purchases.Count: " + AN_Billing.Inventory.Purchases.Count);
                    AN_Logger.Log("AN_Billing.Inventory.Products.Count: " + AN_Billing.Inventory.Products.Count);

                    //Let's print all purchases info
                    foreach (AN_Purchase purchase in AN_Billing.Inventory.Purchases)
                    {
                        AN_Logger.Log("purchase.OrderId: " + purchase.OrderId);
                        AN_Logger.Log("purchase.ProductId: " + purchase.ProductId);
                        AN_Logger.Log("purchase.PackageName: " + purchase.PackageName);
                        AN_Logger.Log("purchase.PurchaseState: " + purchase.PurchaseState);
                        AN_Logger.Log("purchase.PurchaseTime: " + purchase.PurchaseTime);
                        AN_Logger.Log("purchase.Signature: " + purchase.Signature);
                        AN_Logger.Log("purchase.Token: " + purchase.Token);
                        AN_Logger.Log("purchase.Type: " + purchase.Type);
                        AN_Logger.Log("purchase.DeveloperPayload: " + purchase.DeveloperPayload);
                        AN_Logger.Log("purchase.AutoRenewing: " + purchase.AutoRenewing);
                        AN_Logger.Log("purchase.OriginalJson: " + purchase.OriginalJson);
                        AN_Logger.Log("----------------------------------------------------");
                    }

                    //And products info as well
                    foreach (AN_Product product in AN_Billing.Inventory.Products)
                    {
                        AN_Logger.Log("product.ProductId: " + product.ProductId);
                        AN_Logger.Log("product.Type: " + product.Type);
                        AN_Logger.Log("product.Price: " + product.Price);
                        AN_Logger.Log("product.Title: " + product.Title);
                        AN_Logger.Log("product.Description: " + product.Description);
                        AN_Logger.Log("product.PriceAmountMicros: " + product.PriceAmountMicros);
                        AN_Logger.Log("product.PriceCurrencyCode: " + product.PriceCurrencyCode);
                        AN_Logger.Log("product.SubscriptionPeriod: " + product.SubscriptionPeriod);
                        AN_Logger.Log("product.FreeTrialPeriod: " + product.FreeTrialPeriod);
                        AN_Logger.Log("product.SubscriptionPeriod: " + product.SubscriptionPeriod);
                        AN_Logger.Log("product.FreeTrialPeriod: " + product.FreeTrialPeriod);
                        AN_Logger.Log("product.IntroductoryPrice: " + product.IntroductoryPrice);
                        AN_Logger.Log("product.IntroductoryPriceAmountMicros: " + product.IntroductoryPriceAmountMicros);
                        AN_Logger.Log("product.IntroductoryPricePeriod: " + product.IntroductoryPricePeriod);
                        AN_Logger.Log("product.IntroductoryPriceCycles: " + product.IntroductoryPriceCycles);
                        AN_Logger.Log("product.IsValid: " + product.IsValid);
                        AN_Logger.Log("product.OriginalJson: " + product.OriginalJson);
                        AN_Logger.Log("----------------------------------------------------");
                    }
                }
                else
                {
                    AN_Logger.Log("Billing service connection failed: " + result.Error.FullMessage);
                }
            });
        });

        m_checkLicenseButton.onClick.AddListener(() => {
            AN_LicenseChecker.CheckAccess((result) => {
                switch (result.PolicyCode)
                {
                case AN_Policy.LICENSED:
                    AN_Logger.Log("AN_LicenseChecker: LICENSED");
                    break;

                case AN_Policy.NOT_LICENSED:
                    AN_Logger.Log("AN_LicenseChecker: NOT_LICENSED");
                    break;

                case AN_Policy.RETRY:
                    AN_Logger.Log("AN_LicenseChecker: RETRY");
                    break;
                }

                if (result.IsFailed)
                {
                    Debug.Log("AN_LicenseChecker error: " + result.ErrorCode.ToString());
                }
            });
        });
    }