private void InitView()
 {
     Log.Info(TAG, "InitView");
     FindViewById(Resource.Id.progressBar1).Visibility = ViewStates.Visible;
     FindViewById(Resource.Id.content).Visibility      = ViewStates.Gone;
     countTextView                         = (TextView)FindViewById(Resource.Id.gems_count);
     countTextView.Text                    = (DeliveryUtils.getCountOfGems(this)).ToString();
     consumableProductsListview            = (ListView)FindViewById(Resource.Id.consumable_product_list1);
     consumableProductsListview.ItemClick += delegate(object sender, AdapterView.ItemClickEventArgs e)
     {
         Buy(e.Position);
     };
     purchaseHisBtn        = (Button)FindViewById(Resource.Id.enter_purchase_his);
     purchaseHisBtn.Click += delegate
     {
         Intent intent = new Intent(this, typeof(PurchaseHistoryActivity));
         StartActivity(intent);
     };
     QueryProducts();
 }
 private void DeliverProduct(String inAppPurchaseDataStr, String inAppPurchaseDataSignature)
 {
     try
     {
         InAppPurchaseData inAppPurchaseDataBean = new InAppPurchaseData(inAppPurchaseDataStr);
         if (inAppPurchaseDataBean.PurchaseStatus != InAppPurchaseData.PurchaseState.Purchased)
         {
             return;
         }
         String purchaseToken = inAppPurchaseDataBean.PurchaseToken;
         String productId     = inAppPurchaseDataBean.ProductId;
         if (DeliveryUtils.isDelivered(this, purchaseToken))
         {
             Toast.MakeText(this, productId + " has been delivered", ToastLength.Long).Show();
             ConsumeOwnedPurchase(mClient, purchaseToken);
         }
         else
         {
             if (DeliveryUtils.DeliverProduct(this, productId, purchaseToken))
             {
                 Log.Info(TAG, "delivery success");
                 Toast.MakeText(this, productId + " delivery success", ToastLength.Long).Show();
                 UpdateNumberOfGems();
                 ConsumeOwnedPurchase(mClient, purchaseToken);
             }
             else
             {
                 Log.Error(TAG, productId + " delivery fail");
                 Toast.MakeText(this, productId + " delivery fail", ToastLength.Long).Show();
             }
         }
     }
     catch (JSONException e)
     {
         Log.Error(TAG, "delivery:" + e.Message);
     }
 }
        private void UpdateNumberOfGems()
        {
            String countOfGems = (DeliveryUtils.getCountOfGems(this)).ToString();

            countTextView.Text = countOfGems;
        }