本文說明如何從 Google Play 帳款服務程式庫 (PBL) 第 6 版或第 7 版遷移至第 8 版,以及如何整合新的選用訂閱功能。
如需第 8.0.0 版的完整異動清單,請參閱「版本資訊」。
總覽
PBL 8 改善了現有 API,並移除了先前已淘汰的 API。這個版本的程式庫也包含一次性產品的新 API。
PBL 升級的回溯相容性
如要遷移至 PBL 8,您必須更新或移除應用程式中部分現有的 API 參照,詳情請參閱版本說明和本遷移指南的後續內容。
從 PBL 6 或 7 升級至 PBL 8
如要從 PBL 6 或 7 升級至 PBL 8,請按照下列步驟操作:
在應用程式的
build.gradle
檔案中,更新 Play 帳款服務程式庫依附元件版本。dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }
(僅適用於從 PBL 6 升級至 PBL 8)。在應用程式中處理訂閱項目相關 API 異動。
下表列出 PBL 8 中移除的訂閱項目相關 API,以及您必須在應用程式中使用的對應替代 API。
已從 Play 帳款服務程式庫第 8 版中移除先前淘汰的 API 要使用的替代 API setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode 更新
queryProductDetailsAsync
方法的實作方式。ProductDetailsResponseListener.onProductDetailsResponse
方法的簽章有所變更,因此您必須修改應用程式的queryProductDetailsAsync
實作方式。詳情請參閱「顯示可供購買的產品」。處理已移除的 API。
從以下版本升級:
PBL 8 不再支援下表列出的 API。如果您的實作項目使用任何已移除的 API,請參閱下表,瞭解對應的替代 API。
已從 Play 帳款服務程式庫第 8 版中移除先前淘汰的 API 要使用的替代 API queryPurchaseHistoryAsync API 請參閱「查詢購買記錄」 querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (不含參數的 API) enablePendingPurchases(PendingPurchaseParams params)
請注意,已淘汰的 enablePendingPurchases() 在功能上等同於enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
。queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails 從以下版本升級:
下表列出 PBL 8 中移除的 API,以及您必須在應用程式中使用的對應替代 API。
已從 Play 帳款服務程式庫第 8 版中移除先前淘汰的 API 要使用的替代 API queryPurchaseHistoryAsync API 請參閱「查詢購買記錄」 querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (不含參數的 API) enablePendingPurchases(PendingPurchaseParams params)
請注意,已淘汰的 enablePendingPurchases() 在功能上等同於enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
。queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (建議) 啟用自動重新連線服務。
如果服務中斷連線時發出 API 呼叫,Play 帳款服務程式庫可以嘗試自動重新建立服務連線。詳情請參閱「啟用自動重新連線服務」。
可選的變更。
支援預付方案的待處理交易。詳情請參閱「處理訂閱項目和待處理交易」。
虛擬分期付款訂閱方案。詳情請參閱「分期付款訂閱方案整合」。