Вызов consumeAsync

#android #android-fragments

#Android #android-фрагменты

Вопрос:

Я реализовал встроенные покупки в своем приложении, но они доступны для покупки только один раз в моем коде onPurchaseFinished, где я должен вызвать onConsumeListener?

 @Override
public void onPurchasesUpdated(int responseCode, @Nullable List<Purchase> purchases) {


    if (responseCode == BillingClient.BillingResponse.OK
            amp;amp; purchases != null) {
       Toast.makeText(getContext(), "Purchased", Toast.LENGTH_SHORT).show();
        adddata();


        for (Purchase purchase : purchases) {

        }
    } else if (responseCode == BillingClient.BillingResponse.USER_CANCELED) {
        // Handle an error caused by a user cancelling the purchase flow.

    } else if (responseCode == BillingClient.BillingResponse.ITEM_ALREADY_OWNED) {

        Toast.makeText(getContext(), "Purchase Limit Reached! Try again later", Toast.LENGTH_SHORT).show();

    } else{

        // Handle any other error codes.
    }
}
  

Ответ №1:

может кому-нибудь помочь, это для библиотеки выставления счетов версии 3:

 ConsumeParams consumeParams = ConsumeParams
                .newBuilder()
                .setPurchaseToken(purchase.getPurchaseToken())
                .build();
        billingClient.consumeAsync(consumeParams, new ConsumeResponseListener() {
            @Override
            public void onConsumeResponse(BillingResult billingResult, String s) {

                //do something..
            }
        });
  

К вашему сведению, я выполняю покупку после запроса — queryPurchaseHistoryAsync , поэтому мой purchase объект имеет тип: PurchaseHistoryRecord

Ответ №2:

Вы можете поместить

 mHelper.consumeAsync(inventory.getPurchase(SKU_COINS),mConsumeFinishedListener);
  

в соответствии с вашими потребностями.

Согласно моему предложению, вы можете использовать свой продукт в OnIabPurchaseFinishedListener или QueryInventoryFinishedListener

Комментарии:

1. Да. Обратитесь по этой ссылке theappguruz.com/blog/implement-in-app-purchase-version-3