Я использовал 'com.android.billingclient: billing: 2.0.3'.
Как различить расходуемые продукты и продукты, которые не потребляются?
Расходные материалыодобрен для покупки с consumeAsync()
, а не расходуемые продукты одобрены для покупки с acknowledgePurchase()
.
Похоже, что расходуемые и нерасходуемые продукты классифицируются по тому, вызывается ли функция receiveAsync () илине.
1.Существуют ли другие методы классификации?
(https://developer.android.com/google/play/billing/billing_library_overview#acknowledge/)
2 .cknowledgePurchase () направлен на API для непотребляемых продуктов. Не следует ли его использоватьдля расходных материалов?
Я могу добавить paylaod для разработчика следующим образом:
Для расходуемых продуктов takeAsync () принимает объект ConsumeParams, который включает поле полезной нагрузки разработчика, как показано вВ следующем примере:
BillingClient client = ...
ConsumeResponseListener listener = ...
ConsumeParams consumeParams =
ConsumeParams.newBuilder()
.setPurchaseToken(/* token */)
.setDeveloperPayload(/* payload */)
.build();
client.consumeAsync(consumeParams, listener);
Для продуктов, которые не потребляются, acceptledgePurchase () принимает объект AcknowledgePurchaseParams, который включает поле полезной нагрузки разработчика, как показано в следующем примере:
BillingClient client = ...
AcknowledgePurchaseResponseListener listener = ...
AcknowledgePurchaseParams acknowledgePurchaseParams =
AcknowledgePurchaseParams.newBuilder()
.setPurchaseToken(/* token */)
.setDeveloperPayload(/* payload */)
.build();
client.acknowledgePurchase(acknowledgePurchaseParams, listener);
(https://developer.android.com/google/play/billing/billing_library_overview#attach_a_developer_payload)
3. Планируете ли вы добавить тип управления для расходных и не расходуемых продуктов в будущем?
4. Может ли звонокбыть ограниченным для опечаток?