首页 > 解决方案 > android 应用程序中的内部购买

问题描述

该应用程序已经包括通过google pay购买内部货币,但我只能购买1次一定数量的货币,下一次付款对话框不启动。为什么会这样?也许我需要在游戏控制台中配置一些东西

标签: androidgoogle-playin-app-billing

解决方案


这是因为您必须消费您的购买,例如:

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)


推荐阅读