本文档介绍了如何从 Google Play 结算库版本 5 或 6 进行迁移 Google Play 结算库版本 7 以及如何与新增的可选 订阅功能。
有关版本 7.0.0 中的完整更改列表,请参阅发行 备注。
概览
Google Play 结算库版本 7 改进了 现有的订阅功能。这些可选的改进 新增对分期付款方案及 支持预付费订阅的待处理购买交易。
向后兼容的 Play 结算库升级
所有新的 Google Play 结算库版本 7 API 都是可选的, 开发者无需实施任何 API 更改即可更新。
如要迁移,您需要更新 API 引用并移除 使用特定的 API,如版本说明中所述。 迁移指南。
从 PBL 5 升级到 PBL 7
以下部分介绍了如何从 PBL 5 升级到 PBL 7。
更新 Google Play 结算库
在以下位置更新 Play 结算库依赖项版本:
应用的 build.gradle
文件。
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
接下来,按照以下部分中的说明更新 API 引用。
更改用户的订阅购买交易
Play 结算库 5 及更低版本使用的是 ProrationMode
将更改应用于用户的订阅购买交易(如升级许可)
或降级。此 API 已被移除并替换为
ReplacementMode
。
处理订阅价格变动
移除了之前已废弃的 launchPriceConfirmationFlow
API。
如需了解替代方案,请参阅价格变动指南。
处理与订阅相关的 API 更改
先前已废弃的 API setOldSkuPurchaseToken
,
setReplaceProrationMode
、setReplaceSkusProrationMode
已移除。
- 将
setOldSkuPurchaseToken
更新为setOldPurchaseToken
。 - 将
setReplaceProrationMode
更新为setSubscriptionReplacementMode
。 - 将
setReplaceSkusProrationMode
更新为setSubscriptionReplacementMode
。
处理 Play 结算库错误
如果出现新的 NETWORK_ERROR
代码,则表示网络连接有问题
与用户的设备和 Google Play 系统相关联。
SERVICE_TIMEOUT
和 SERVICE_UNAVAILABLE
的验证码也已更新。
如需了解详情,请参阅 处理 BillingResult 响应代码。
处理待处理的交易
Play 结算库不会再为待处理的购买交易创建订单 ID。
对于这些购买交易,系统会在购买交易迁移后填充订单 ID
PURCHASED
状态。确保您的集成符合预期
订单 ID。你仍然可以使用
购买令牌留作记录。
如需详细了解如何处理待处理的购买交易,请参阅 Play 结算库集成指南和 购买生命周期管理指南。
处理已移除的备选结算系统 API
移除了 BillingClient.Builder.enableAlternativeBilling
,
AlternativeBillingListener
,
和AlternativeChoiceDetails
。
开发者应将 BillingClient.Builder.enableUserChoiceBilling()
与 UserChoiceBillingListener
搭配使用
和UserChoiceDetails
。
此更新是对已废弃 API 的重命名,没有行为变更。
可选更改
PBL 7 包含两个新的可选 API。
支持预付费方案的待处理购买
请参阅处理订阅和待处理交易指南。
虚拟分期付款订阅
请参阅分期付款订阅集成指南。
从 PBL 6 升级到 PBL 7
以下部分介绍了如何从 PBL 6 升级到 PBL 7。
更新 Google Play 结算库
在以下位置更新 Play 结算库依赖项版本:
应用的 build.gradle
文件。
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
接下来,按照以下部分中的说明更新 API 引用。
处理与订阅相关的 API 更改
先前已废弃的 API setOldSkuPurchaseToken
,
setReplaceProrationMode
、setReplaceSkusProrationMode
已移除。
- 将
setOldSkuPurchaseToken
更新为setOldPurchaseToken
。 - 将
setReplaceProrationMode
更新为setSubscriptionReplacementMode
。 - 将
setReplaceSkusProrationMode
更新为setSubscriptionReplacementMode
。
处理已移除的备选结算系统 API
移除了 BillingClient.Builder.enableAlternativeBilling
,
AlternativeBillingListener
和AlternativeChoiceDetails
。
开发者应将 BillingClient.Builder.enableUserChoiceBilling()
与 UserChoiceBillingListener
搭配使用
和UserChoiceDetails
。
可选更改
PBL 7 包含两个新的可选 API。
支持预付费方案的待处理购买
请参阅处理订阅和待处理交易指南。
虚拟分期付款订阅
如需了解更多详情,请参阅分期付款订阅集成指南 了解如何将这些更改集成到您的应用中。