android 应用程序中的内部购买
Internal purchases in the android application
该应用程序已经包括通过google 支付购买内部货币,但我只能购买一定数量的货币 1 次,下一次支付对话框不会启动。为什么会这样?也许我需要在游戏控制台中配置一些东西
因为您必须消费您购买的商品,因此:
override fun onPurchasesUpdated(result: BillingResult, purchases: List<Purchase>?) {
purchases?.forEach { consumePurchase(it) }
}
private fun consumePurchase(purchase: Purchase) {
val consumeParams = ConsumeParams
.newBuilder()
.setPurchaseToken(purchase.purchaseToken)
.build()
billingClient.consumeAsync(consumeParams) { result, _ ->
if (result.responseCode == OK) {
}
}
}
这会向 Play 商店发出信号,表明您的应用已收到更新并在后台进行了处理,因此可以进行第二次购买了。您仍然可以通过调用 billingClient.queryPurchaseHistory(INAPP)
.
来完成此操作
该应用程序已经包括通过google 支付购买内部货币,但我只能购买一定数量的货币 1 次,下一次支付对话框不会启动。为什么会这样?也许我需要在游戏控制台中配置一些东西
因为您必须消费您购买的商品,因此:
override fun onPurchasesUpdated(result: BillingResult, purchases: List<Purchase>?) {
purchases?.forEach { consumePurchase(it) }
}
private fun consumePurchase(purchase: Purchase) {
val consumeParams = ConsumeParams
.newBuilder()
.setPurchaseToken(purchase.purchaseToken)
.build()
billingClient.consumeAsync(consumeParams) { result, _ ->
if (result.responseCode == OK) {
}
}
}
这会向 Play 商店发出信号,表明您的应用已收到更新并在后台进行了处理,因此可以进行第二次购买了。您仍然可以通过调用 billingClient.queryPurchaseHistory(INAPP)
.