在应用程序计费v5错误的定价在Android

rdlzhqv9  于 2023-02-10  发布在  Android
关注(0)|答案(1)|浏览(211)

我正在使用InAppbilling v5在Android中检索项目的价格,一切都正常工作,但是当“谷歌”审查我的应用程序,他们拒绝了,因为我没有遵循订阅准则.在我的测试中,价格检索正确,但在谷歌的截图有一个“免费”,一个格式化的价格字符串,而不是$9.00,所以我不知道如何解决这个问题,因为显然只有当谷歌审查我的应用程序发生。我使用以下代码来检索产品

billingClient.queryProductDetails(
                        subscriptions.toQueryProduct(ProductType.SUBS)
                    ).productDetailsList

然后,我将检索如下所示的优惠详情:

val price = productDetails.subscriptionOfferDetails
                                ?.firstOrNull()
                                ?.pricingPhases?.pricingPhaseList
                                ?.firstOrNull()
                                ?.formattedPrice ?: ""

在我的设备和模拟器作品正确显示正确的价格,但对于谷歌它显示“免费”为formattedPrice我怎么能解决这个问题?在我的订阅在播放商店控制台我只有一个价格/基础提供7天的免费试用。

olhwl3o2

olhwl3o21#

我发现了这个问题,问题是,在新版本的V5如果用户从来没有任何订阅将有2个阶段,“免费”试用其中价格是免费的和试用后的订阅价格,我测试了我的用户,因为我已经有任何订阅的“免费”是不可用的,但对于新用户,从来没有任何订阅有一个免费的opion.现在在我的代码,我过滤免费与此代码

// there can be several pricingPhases and trial can be "free"
                            val formattedPrice = offerDetails?.pricingPhases
                                ?.pricingPhaseList
                                ?.firstOrNull { it.priceAmountMicros > 0 }
                                ?.formattedPrice

使用it.priceAmountMicros > 0将过滤所有非“免费”或有价格的项目

相关问题