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).

来完成此操作