Google Play 结算库:确定基本计划/订阅购买的到期日期

jak*_*e n 20 android in-app-billing android-billing play-billing-library google-play-billing

我正在使用 Google Play Billing Library 5,并且有一个具有不同基本计划的订阅产品。

PurchasesUpdatedListener在或 的回调中处理购买时queryPurchasesAsync,我会收到一个对象列表Purchase,其中包含产品 ID、购买时间以及是否自动续订等内容。

但我如何知道用户选择了哪个基本计划以及该计划何时到期?

返回PurchaseHistoryRecordqueryPurchaseHistoryAsync似乎也不包含此信息。

我知道 Play Developer API 使用 来返回过期时间purchases.subscriptionsv2.get,但是直接使用 API 带来的不便是否有必要?

mbw*_*asi 13

我得出的结论是,最好忽略整个多个基本计划功能。

而是单独创建订阅,这样您就拥有 Silver_Plan_Monthly --> Silver_Monthly_Base --> Silver_monthly_free_Trial_offer。然后单独订阅。Silver_Plan_Yearly --> Silver_Yearly_Base --> Silver_yearly_free_试用_offer。等等,无论您想要多少个订阅级别,白银、黄金、白金等。

这样,当您获得用户购买的信息时,您可以立即通过productId(即订阅名称(Silver_Plan_Monthly))了解他们购买的子/级别/续订周期。

必须创建所有这些子项,但计费库没有提供足够的信息,这很烦人。

现在,您应该能够在这些级别和计费周期之间轻松升级/降级用户。