Beispiel #1
0
 public void PurchaseApplication(PurchaseDelegate callback)
 {
     Dispatcher.InvokeOnUIThread(async() =>
     {
         try
         {
             var result = await PurchaseApplicationAsync();
             if (callback != null)
             {
                 var receipt = new Receipt(StatusCode.Success, result);
                 Dispatcher.InvokeOnAppThread(() => callback(receipt));
             }
             ;
         }
         catch
         {
             if (callback != null)
             {
                 var receipt = new Receipt(StatusCode.ExceptionThrown, null);
                 Dispatcher.InvokeOnAppThread(() => callback(receipt));
             }
             ;
         }
     });
 }
Beispiel #2
0
 public void PurchaseProduct(Product product, PurchaseDelegate callback)
 {
     Dispatcher.InvokeOnUIThread(async() =>
     {
         try
         {
             var networkAvailable = NetworkInterface.GetIsNetworkAvailable();
             if (!networkAvailable)
             {
                 throw new Exception();
             }
             if (TrialMode)
             {
                 await PurchaseApplicationAsync();
             }
             var result = await PurchaseProductAsync(product);
             if (callback != null)
             {
                 Dispatcher.InvokeOnAppThread(() => callback(result));
             }
             ;
         }
         catch
         {
             if (callback != null)
             {
                 Dispatcher.InvokeOnAppThread(() => callback(new Receipt(product, StatusCode.ExceptionThrown, null)));
             }
             ;
         }
     });
 }
        public void PurchaseApplication(PurchaseDelegate callback)
        {
            if (_storeObject == null)
            {
                if (callback != null)
                    callback(new Receipt(StatusCode.NotReady, null));
                return;
            }

            _storeObject.PurchaseApplication(callback);
        }
        public void PurchaseProduct(Product product, PurchaseDelegate callback)
        {
            if (_storeObject == null)
            {
                if (callback != null)
                    callback(new Receipt(product, StatusCode.NotReady, null));
                return;
            }

            _storeObject.PurchaseProduct(product, callback);
        }
Beispiel #5
0
        public void PurchaseApplication(PurchaseDelegate callback)
        {
            if (_storeObject == null)
            {
                if (callback != null)
                {
                    callback(new Receipt(StatusCode.NotReady, null));
                }
                return;
            }

            _storeObject.PurchaseApplication(callback);
        }
Beispiel #6
0
        public void PurchaseProduct(Product product, PurchaseDelegate callback)
        {
            if (_storeObject == null)
            {
                if (callback != null)
                {
                    callback(new Receipt(product, StatusCode.NotReady, null));
                }
                return;
            }

            _storeObject.PurchaseProduct(product, callback);
        }
 public void PurchaseApplication(PurchaseDelegate callback)
 {
     Dispatcher.InvokeOnUIThread(async () =>
     {
         try
         {
             var result = await PurchaseApplicationAsync();
             if (callback != null)
             {
                 var receipt = new Receipt(StatusCode.Success, result);
                 Dispatcher.InvokeOnAppThread(() => callback(receipt));
             };            
         }
         catch
         {
             if (callback != null)
             {
                 var receipt = new Receipt(StatusCode.ExceptionThrown, null);
                 Dispatcher.InvokeOnAppThread(() => callback(receipt));
             };
         }
     });
 }
        public void PurchaseProduct(Product product, PurchaseDelegate callback)
        {
            if (_store == null) return;

            Dispatcher.InvokeOnUIThread(async () =>
            {
                try
                {
                    var networkAvailable = NetworkInterface.GetIsNetworkAvailable();
                    if (!networkAvailable)
                    {
                        throw new Exception();
                    }
                    if (TrialMode)
                    {
                        await PurchaseApplicationAsync();
                    }
                    var result = await PurchaseProductAsync(product);
                    if (callback != null)
                    {
                        Dispatcher.InvokeOnAppThread(() => callback(result));
                    };
                }
                catch
                {
                    if (callback != null)
                    {
                        Dispatcher.InvokeOnAppThread(() => callback(new Receipt(product, StatusCode.ExceptionThrown, null)));
                    };
                }
            });
        }