将 google Play 计费库更新到版本 2 不起作用,购买总是退款
Updating google play billing library to version 2 is not working, purchase is always refunded
我使用计费客户端 1.0.2 库实现了应用内计费功能 Android,一切正常。我有一个简单的高级升级,没有订阅。
现在我尝试升级到 2.0.3,我对我的代码进行了所有必要的更改(使用官方文档、发行说明和 Whosebug),但它不起作用。我知道我必须在三天内确认所有购买。未能正确识别购买将导致这些购买的报销。我就是这么做的。
整个购买流程看起来没问题,行为就像库更新之前一样。但最后我的购买总是在 5 分钟后退款(使用试用帐户,所以它是 5 分钟而不是 3 天)。
这是在 onPurchasesUpdated 内:
if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) {
if (!purchase.isAcknowledged()) {
AcknowledgePurchaseParams acknowledgePurchaseParams = AcknowledgePurchaseParams.newBuilder().setPurchaseToken(purchase.getPurchaseToken()).build();
AcknowledgePurchaseResponseListener acknowledgePurchaseResponseListener = new AcknowledgePurchaseResponseListener() {
@Override
public void onAcknowledgePurchaseResponse(BillingResult billingResult) {
Toast.makeText(getContext(), "Purchase acknowledged", Toast.LENGTH_LONG);
}
};
mBillingClient.acknowledgePurchase(acknowledgePurchaseParams, acknowledgePurchaseResponseListener);
}
}
调试器执行识别,在onAcknowledgePurchaseResponse 中,我可以看到我的billingResult 响应代码是5(开发者错误),调试消息是空的。我不知道出了什么问题。拜托,有人可以帮我找出缺少的东西。非常感谢!
将计费客户端库更新到 3.0.0 后一切正常!
我使用计费客户端 1.0.2 库实现了应用内计费功能 Android,一切正常。我有一个简单的高级升级,没有订阅。
现在我尝试升级到 2.0.3,我对我的代码进行了所有必要的更改(使用官方文档、发行说明和 Whosebug),但它不起作用。我知道我必须在三天内确认所有购买。未能正确识别购买将导致这些购买的报销。我就是这么做的。
整个购买流程看起来没问题,行为就像库更新之前一样。但最后我的购买总是在 5 分钟后退款(使用试用帐户,所以它是 5 分钟而不是 3 天)。
这是在 onPurchasesUpdated 内:
if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) {
if (!purchase.isAcknowledged()) {
AcknowledgePurchaseParams acknowledgePurchaseParams = AcknowledgePurchaseParams.newBuilder().setPurchaseToken(purchase.getPurchaseToken()).build();
AcknowledgePurchaseResponseListener acknowledgePurchaseResponseListener = new AcknowledgePurchaseResponseListener() {
@Override
public void onAcknowledgePurchaseResponse(BillingResult billingResult) {
Toast.makeText(getContext(), "Purchase acknowledged", Toast.LENGTH_LONG);
}
};
mBillingClient.acknowledgePurchase(acknowledgePurchaseParams, acknowledgePurchaseResponseListener);
}
}
调试器执行识别,在onAcknowledgePurchaseResponse 中,我可以看到我的billingResult 响应代码是5(开发者错误),调试消息是空的。我不知道出了什么问题。拜托,有人可以帮我找出缺少的东西。非常感谢!
将计费客户端库更新到 3.0.0 后一切正常!