【发布时间】:2019-12-16 18:40:08
【问题描述】:
我是 android 新手,第一次尝试实现应用内结算。
我正在使用 google play 应用内库。 https://developer.android.com/google/play/billing/billing_library_overview
我想实现消耗品应用内购买。我正在使用“android.test.purchased”保留 id 进行测试。我可以加载 skuDetails 并成功购买并成功消费购买
这是我的 handlePurchase 方法,带有 consumeAsync
void handlePurchase(Purchase purchase) {
BillingClient client = BillingClient.newBuilder(NewAdActivity.this)
.enablePendingPurchases()
.setListener(this)
.build();
if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) {
System.out.println("item successfully purchased");
if (!purchase.isAcknowledged()) {
ConsumeParams consumeParams = ConsumeParams.newBuilder()
.setPurchaseToken(purchase.getPurchaseToken())
.setDeveloperPayload(purchase.getDeveloperPayload())
.build();
ConsumeResponseListener consumeResponseListener = new ConsumeResponseListener() {
@Override
public void onConsumeResponse(BillingResult billingResult, String purchaseToken) {
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK && purchaseToken != null) {
System.out.println("SUCCESSFULLY consumed PURCHASE");
providecontent();
}
else {
System.out.println("FAILED TO consume:”);
}
}
};
client.consumeAsync(consumeParams, consumeResponseListener);
}
}
}
我消费购买时是否也确认购买?我是否需要在 purchase.originalJson 中手动设置 "acknowledged":true ?
我的代码是否可以正确消费购买的商品?或者我需要在消费之前添加一个单独的确认购买。
请回复。任何帮助都非常感谢。
谢谢。
【问题讨论】:
标签: java android in-app-purchase in-app-billing android-inapp-purchase