Beispiel #1
0
 public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
   Log.d(TAG, "Purchase finished: " + result + ", purchase: " + purchase);
   if (result.isFailure()) {
     Log.e(TAG, "Error purchasing: " + result);
     UnityPlayer.UnitySendMessage(
         EVENT_MANAGER, PURCHASE_FAILED_CALLBACK, result.getMessage());
     return;
   }
   Log.d(TAG, "Purchase successful.");
   String jsonPurchase;
   try {
     jsonPurchase = purchaseToJson(purchase);
   } catch (JSONException e) {
     UnityPlayer.UnitySendMessage(
         EVENT_MANAGER, PURCHASE_FAILED_CALLBACK, "Couldn't serialize the purchase");
     return;
   }
   UnityPlayer.UnitySendMessage(EVENT_MANAGER, PURCHASE_SUCCEEDED_CALLBACK, jsonPurchase);
 }
Beispiel #2
0
 public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
   _lastResult = result;
   if (result.isFailure()) {
     // handle error here
     _isPurchasedItemsQueryFinished = false;
   } else {
     _inventory = inventory;
     _isPurchasedItemsQueryFinished = true;
   }
 }
        public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
          Log.d(TAG, "Query inventory finished.");
          if (result.isFailure()) {
            UnityPlayer.UnitySendMessage(
                EVENT_MANAGER, QUERY_INVENTORY_FAILED_CALLBACK, result.getMessage());
            return;
          }

          Log.d(TAG, "Query inventory was successful.");
          String jsonInventory;
          try {
            jsonInventory = inventoryToJson(inventory);
          } catch (JSONException e) {
            UnityPlayer.UnitySendMessage(
                EVENT_MANAGER, QUERY_INVENTORY_FAILED_CALLBACK, "Couldn't serialize the inventory");
            return;
          }
          UnityPlayer.UnitySendMessage(
              EVENT_MANAGER, QUERY_INVENTORY_SUCCEEDED_CALLBACK, jsonInventory);
        }
 public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
   UnityPlayer.currentActivity.sendBroadcast(new Intent(UnityProxyActivity.ACTION_FINISH));
   Log.d(TAG, "Purchase finished: " + result + ", purchase: " + purchase);
   if (result.isFailure()) {
     Log.e(TAG, "Error purchasing: " + result);
     UnityPlayer.UnitySendMessage(
         EVENT_MANAGER,
         PURCHASE_FAILED_CALLBACK,
         result.getResponse() + "|" + result.getMessage());
     return;
   }
   Log.d(TAG, "Purchase successful.");
   String jsonPurchase;
   try {
     jsonPurchase = purchaseToJson(purchase);
   } catch (JSONException e) {
     UnityPlayer.UnitySendMessage(
         EVENT_MANAGER, PURCHASE_FAILED_CALLBACK, "-1|Couldn't serialize the purchase");
     return;
   }
   UnityPlayer.UnitySendMessage(EVENT_MANAGER, PURCHASE_SUCCEEDED_CALLBACK, jsonPurchase);
 }
        public void onConsumeFinished(Purchase purchase, IabResult result) {
          Log.d(TAG, "Consumption finished. Purchase: " + purchase + ", result: " + result);

          purchase.setSku(
              SkuManager.getInstance().getSku(purchase.getAppstoreName(), purchase.getSku()));

          if (result.isFailure()) {
            Log.e(TAG, "Error while consuming: " + result);
            UnityPlayer.UnitySendMessage(
                EVENT_MANAGER, CONSUME_PURCHASE_FAILED_CALLBACK, result.getMessage());
            return;
          }
          Log.d(TAG, "Consumption successful. Provisioning.");
          String jsonPurchase;
          try {
            jsonPurchase = purchaseToJson(purchase);
          } catch (JSONException e) {
            UnityPlayer.UnitySendMessage(
                EVENT_MANAGER, CONSUME_PURCHASE_FAILED_CALLBACK, "Couldn't serialize the purchase");
            return;
          }
          UnityPlayer.UnitySendMessage(
              EVENT_MANAGER, CONSUME_PURCHASE_SUCCEEDED_CALLBACK, jsonPurchase);
        }
        public void onQueryInventoryFinished(IabResult result, Inventory inventory) {

          mHelper.flagEndAsync();

          if (result.isFailure()) {
            updateListener.updateFailed();
            return;
          }

          for (StoreItem item : getAllStoreItems(c)) {
            if (item.googleSKU != null) {
              item.isPurchased = inventory.hasPurchase(item.googleSKU);
            }
          }

          writePurchasedItems(c);

          updateListener.updateSuccess();
        }
        public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
          StoreItem purchasedItem = null;
          int index = 0;

          mHelper.flagEndAsync();

          if (purchase == null) {
            Toast.makeText(
                    c,
                    "We can't find the requested item. Please try again soon!",
                    Toast.LENGTH_SHORT)
                .show();
            return;
          }

          for (StoreItem item : getAllStoreItems(c)) {
            if (item.googleSKU.compareTo(purchase.getSku()) == 0) {
              purchasedItem = item;
              break;
            }

            index++;
          }

          if (result.isFailure() || purchasedItem == null) {
            Log.d("FF PURCHASE", "Error purchasing: " + result);
            purchaseListener.purchaseFailed(purchasedItem, purchase);
            return;
          } else {
            purchasedItem.isPurchased = true;
            getAllStoreItems(c).get(index).isPurchased = true;
            purchaseListener.purchaseSuccess(purchasedItem, purchase);
          }

          writePurchasedItems(c);
        }
 public IabException(IabResult r, Exception cause) {
   super(r.getMessage(), cause);
   mResult = r;
 }
Beispiel #9
0
 public int getLastResult() {
   int res = -1;
   if (_lastResult != null) res = _lastResult.getResponse();
   return res;
 }
Beispiel #10
0
 public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
   _lastResult = result;
   if (result.isSuccess()) _isPurchaseFinished = true;
   else _isPurchaseFinished = false;
 }
Beispiel #11
0
 public void onConsumeFinished(Purchase purchase, IabResult result) {
   _lastResult = result;
   if (result.isSuccess()) _isConsumeFinished = true;
   else _isConsumeFinished = false;
 }