【发布时间】:2022-06-16 12:54:49
【问题描述】:
Google 已更新其计费系统,但没有完整的信息如何处理。
因此,我们有 ProductDetails 类,而不是 SkyDetails。我们可以在billingClient.queryProductDetailsAsync() 的回调中接收到这个对象。然后我们可以在这个对象上调用getSubscriptionOfferDetails() 并访问ProductDetails.PricingPhases 的列表。例如,如果产品有 2 个报价(基本报价和试用报价),我们会得到 2 个ProductDetails.PricingPhases 的列表。
那么当用户想要购买产品时,我们使用这个(来自官方文档):
val offerToken = productDetails.offerDetails(selectedOfferIndex).offerToken
selectedOfferIndex 是什么?我们应该始终选择第一个项目还是视情况而定?
提前感谢大家。
【问题讨论】:
-
由于
getSubscriptionOfferDetails()返回一个类型List<ProductDetails.SubscriptionOfferDetails>,你需要一个类型为ProductDetails.SubscriptionOfferDetails的单数对象,所以selectedOfferIndex是用户从列表中选择的项目的索引提供的优惠。有关 api 文档的更多信息:developer.android.com/reference/com/android/billingclient/api/…