我正在使用InAppbilling v5在Android中检索项目的价格,一切都正常工作,但是当“谷歌”审查我的应用程序,他们拒绝了,因为我没有遵循订阅准则.在我的测试中,价格检索正确,但在谷歌的截图有一个“免费”,一个格式化的价格字符串,而不是$9.00,所以我不知道如何解决这个问题,因为显然只有当谷歌审查我的应用程序发生。我使用以下代码来检索产品
billingClient.queryProductDetails(
subscriptions.toQueryProduct(ProductType.SUBS)
).productDetailsList
然后,我将检索如下所示的优惠详情:
val price = productDetails.subscriptionOfferDetails
?.firstOrNull()
?.pricingPhases?.pricingPhaseList
?.firstOrNull()
?.formattedPrice ?: ""
在我的设备和模拟器作品正确显示正确的价格,但对于谷歌它显示“免费”为formattedPrice
我怎么能解决这个问题?在我的订阅在播放商店控制台我只有一个价格/基础提供7天的免费试用。
1条答案
按热度按时间olhwl3o21#
我发现了这个问题,问题是,在新版本的V5如果用户从来没有任何订阅将有2个阶段,“免费”试用其中价格是免费的和试用后的订阅价格,我测试了我的用户,因为我已经有任何订阅的“免费”是不可用的,但对于新用户,从来没有任何订阅有一个免费的opion.现在在我的代码,我过滤免费与此代码
使用
it.priceAmountMicros > 0
将过滤所有非“免费”或有价格的项目