В нем упоминается о том, что покупки совершаются через эту ссылку . Есть разные способы подтверждения покупки в зависимости от типа.
private BillingClient mBillingClient = BillingClient.newBuilder(mActivity).setListener(this).build();
//For non-consumables:
mBillingClient.acknowledgePurchase(acknowledgePurchaseParams, new AcknowledgePurchaseResponseListener());
//For Consumables:
client.consumeAsync(acknowledgePurchaseParams, acknowledgePurchaseResponseListener);
Ссылка, которую я разместил, содержит пример того, как обрабатывать подписки.
UPDATE
Вот более подробный пример того, как признать непотребляемые покупки:
Сначала создайте параметр AcknowledgePurchaseParams
. Для этого вам нужен токен покупки, который вы сможете легко получить, поскольку вы должны вызывать его в своем методе onPurchasesUpdated
или другом методе, которому вы передали покупку после onPurchasesUpdated
:
AcknowledgePurchaseParams acknowledgePurchaseParams =
AcknowledgePurchaseParams.newBuilder()
.setPurchaseToken(purchase.getPurchaseToken())
.build();
Затем создайте слушателя, который будет использоваться в качестве второго параметра. Это позволит вам сделать что-то после подтверждения покупки. В этом примере я отображаю сообщение в виде закусочной:
AcknowledgePurchaseResponseListener acknowledgePurchaseResponseListener = new AcknowledgePurchaseResponseListener() {
@Override
public void onAcknowledgePurchaseResponse(BillingResult billingResult) {
getMessage("Purchase acknowledged");
}
};
Создав их, используйте ваш BillingClient для вызова метода acknowledgePurchase
:
mBillingClient.acknowledgePurchase(acknowledgePurchaseParams, acknowledgePurchaseResponseListener);
Покупка должна быть успешно подтверждена.
Используется acknowledgePurchase
для непотребляемых предметов.
Расходные материалы
Это похоже, только то, что они называются, изменено - см. Объяснение того, чем они являются в приведенном выше примере:
Первый параметр - Параметры - настройка:
ConsumeParams consumeParams = ConsumeParams.newBuilder()
.setPurchaseToken(purchase.getPurchaseToken())
.build();
Второй параметр - Слушатель - настройка :
ConsumeResponseListener consumeResponseListener = new ConsumeResponseListener() {
@Override
public void onConsumeResponse(BillingResult billingResult, String purchaseToken) {
getMessage("Purchase acknowledged");
}
}
Теперь используйте BillingClint и потребление Async:
mBillingClient.consumeAsync(consumeParams, consumeResponseListener);