我可以在 Android 应用程序中通过 Google Play 一次购买多件商品吗?

Hel*_*oCW 6 android kotlin google-play

在我看来,我一次只能在 Google App 中购买一件商品。

代码 A 来自项目 play-billing-samples,你可以在这里看到。

purchases: MutableList<Purchase> 也许存在多个项目,我似乎可以通过 Google Play 同时购买这些项目,对吗?

代码 A

override fun onPurchasesUpdated(
        billingResult: BillingResult,
        purchases: MutableList<Purchase>?
) {
    when (billingResult.responseCode) {
        BillingClient.BillingResponseCode.OK -> {
            // will handle server verification, consumables, and updating the local cache
            purchases?.apply { processPurchases(this.toSet()) }
        }
        BillingClient.BillingResponseCode.ITEM_ALREADY_OWNED -> {
            // item already owned? call queryPurchasesAsync to verify and process all such items
            Log.d(LOG_TAG, billingResult.debugMessage)
            queryPurchasesAsync()
        }
        BillingClient.BillingResponseCode.SERVICE_DISCONNECTED -> {
            connectToPlayBillingService()
        }
        else -> {
            Log.i(LOG_TAG, billingResult.debugMessage)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Llu*_*art 2

用户只能拥有相同的应用内项目一次,但他可以同时拥有不同的项目。

其他解决方案是将物品视为消耗品:

ifbillingClient.consumeAsync()在购买过程结束时调用,那么他可以再次购买相同的商品,但您必须跟踪他通过自己的方式(可能通过后端服务器)购买了多少次。