Exemple #1
0
        public void RestorePurchases()
        {
            if (!_IsStoreLoaded)
            {
                SA.Common.Models.Error e = new SA.Common.Models.Error((int)TransactionErrorCode.SKErrorPaymentServiceNotInitialized, "Store Kit Initilizations required");

                RestoreResult r = new RestoreResult(e);
                OnRestoreComplete(r);
                return;
            }

            OnRestoreStarted();

            if (!Application.isEditor)
            {
                BillingNativeBridge.RestorePurchases();
            }
            else
            {
                if (IOSNativeSettings.Instance.InAppsEditorTesting)
                {
                    foreach (Product product in Products)
                    {
                        if (product.Type == ProductType.NonConsumable)
                        {
                            ISN_Logger.Log("Restored: " + product.Id);
                            FireProductBoughtEvent(product.Id, "", "", "", true);
                        }
                    }

                    FireRestoreCompleteEvent();
                }
            }
        }
Exemple #2
0
        public void onRestoreTransactionFailed(string array)
        {
            SA.Common.Models.Error e = new SA.Common.Models.Error(array);

            RestoreResult r = new RestoreResult(e);

            OnRestoreComplete(r);
        }
Exemple #3
0
        private void onTransactionFailed(string data)
        {
            string[] DataArray = data.Split(new string[] { SA.Common.Data.Converter.DATA_SPLITTER2 }, StringSplitOptions.None);

            string prodcutId = DataArray [0];
            var    error     = new SA.Common.Models.Error(DataArray [1]);

            SendTransactionFailEvent(prodcutId, error);
        }
        //--------------------------------------
        // Native Events
        //--------------------------------------


        private void OnContactPickerDidCancel(string errorData)
        {
            var error = new SA.Common.Models.Error(0, "User Canceled");

            ContactsResult result = new ContactsResult(error);

            ContactsPickResult(result);
            ContactsPickResult = delegate {};
        }
        //--------------------------------------
        // Native Events
        //--------------------------------------

        private void OnContactsRetrieveFailed(string errorData)
        {
            Debug.Log("OnContactsRetrieveFailed");

            var error = new SA.Common.Models.Error(errorData);

            ContactsLoadResult result = new ContactsLoadResult(error);

            ContactsLoadResult(result);
            ContactsLoadResult = delegate {};
        }
Exemple #6
0
        //--------------------------------------
        //  EVENTS
        //--------------------------------------


        private void OnStoreKitInitFailed(string data)
        {
            SA.Common.Models.Error e = new SA.Common.Models.Error(data);

            _IsStoreLoaded       = false;
            _IsWaitingLoadResult = false;


            SA.Common.Models.Result res = new SA.Common.Models.Result(e);
            OnStoreKitInitComplete(res);


            if (!IOSNativeSettings.Instance.DisablePluginLogs)
            {
                ISN_Logger.Log("STORE_KIT_INIT_FAILED Error: " + e.Message);
            }
        }
Exemple #7
0
        public void BuyProduct(string productId)
        {
            if (!Application.isEditor)
            {
                OnTransactionStarted(productId);
                if (!_IsStoreLoaded)
                {
                    ISN_Logger.Log("buyProduct shouldn't be called before StoreKit is initialized");
                    var error = new SA.Common.Models.Error((int)TransactionErrorCode.SKErrorPaymentNotAllowed, "StoreKit not yet initialized");
                    SendTransactionFailEvent(productId, error);

                    return;
                }

                BillingNativeBridge.BuyProduct(productId);
            }
            else
            {
                if (IOSNativeSettings.Instance.InAppsEditorTesting)
                {
                    FireProductBoughtEvent(productId, "", "", "", false);
                }
            }
        }
Exemple #8
0
        private void SendTransactionFailEvent(string productIdentifier, SA.Common.Models.Error error)
        {
            PurchaseResult response = new PurchaseResult(productIdentifier, error);

            OnTransactionComplete(response);
        }
        //--------------------------------------
        // Initialize
        //--------------------------------------

        public PurchaseResult(string productIdentifier, SA.Common.Models.Error e) : base(e)
        {
            _ProductIdentifier = productIdentifier;
            _State             = PurchaseState.Failed;
        }
Exemple #10
0
 public ContactsLoadResult(SA.Common.Models.Error error) : base(error)
 {
 }
 public ShortLinkResult(SA.Common.Models.Error error) : base(error)
 {
 }
Exemple #12
0
        //--------------------------------------
        // Initialize
        //--------------------------------------


        public RestoreResult(SA.Common.Models.Error e) : base(e)
        {
        }