從 Google Play 帳款服務程式庫第 5 版或第 6 版改用第 7 版

本文說明如何從 Google Play 帳款服務程式庫第 5 或 6 版遷出 Google Play 帳款服務程式庫第 7 版,以及如何與新的選用選項整合 訂閱功能。

如需 7.0.0 版的完整異動清單,請參閱版本資訊 附註

總覽

Google Play 帳款服務程式庫第 7 版改善了以下應用程式的付款處理方式 現有訂閱功能這些選用的改善功能 提供分期付款方案的支援,以及 針對預付訂閱項目未完成的交易提供支援服務。

回溯相容的 Play 帳款服務程式庫升級

所有新版 Google Play 帳款服務程式庫第 7 版 API 均為選用性質,且 開發人員不需要導入任何 API 變更即可更新。

如要遷移,請先更新 API 參考資料並移除 特定 API (如版本資訊和後續章節) 遷移指南

從 Play 帳款服務程式庫 5.0 版升級至 Play 帳款服務程式庫 7

以下各節說明如何從 Play 帳款服務程式庫 5.0 版升級至 Play 帳款服務程式庫 7.0 版。

更新 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, 已移除setReplaceProrationModesetReplaceSkusProrationMode」。

處理 Play 帳款服務程式庫錯誤

出現新的 NETWORK_ERROR 驗證碼代表網路連線發生問題 使用者裝置和 Google Play 系統之間的連線

SERVICE_TIMEOUTSERVICE_UNAVAILABLE 代碼也已更新。

若需更多資訊,請參閲 處理 BillingResult 回應代碼

處理未完成的交易

Play 帳款服務程式庫不會再為未完成的購買交易建立訂單 ID。 完成購買交易後,系統就會為這類購買交易填入訂單 ID 轉換為 PURCHASED 狀態。確保您的整合作業符合預期 交易完成後才會傳送訂單 ID。你仍然可以使用 購買憑證,以供備查。

如要進一步瞭解如何處理未完成的購物交易,請參閱 Play 帳款服務程式庫整合指南購買交易生命週期管理指南

處理已移除的其他結帳系統 API

已移除 BillingClient.Builder.enableAlternativeBilling AlternativeBillingListener, 和 AlternativeChoiceDetails。 開發人員應將 BillingClient.Builder.enableUserChoiceBilling()UserChoiceBillingListener 搭配使用 和UserChoiceDetails 傳回的結果。

本次更新將重新命名已淘汰的 API,且沒有任何行為變更。

選擇性變更

PBL 7 內含兩個新的選用 API。

支援預付方案未完成的交易

請參閱「處理訂閱和待處理交易」指南。

虛擬分期付款訂閱

請參閱分期付款訂閱整合指南。

從 Play 帳款服務程式庫 6.0 版升級至 Play 帳款服務程式庫 7

以下各節說明如何從 Play 帳款服務程式庫 6.0 版升級至 PBL 7。

更新 Google Play 帳款服務程式庫

更新下列位置的 Play 帳款服務程式庫依附元件版本: 應用程式的 build.gradle 檔案。

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

接下來,請按照以下各節的說明更新 API 參考資料。

處理與訂閱相關的 API 變更

先前淘汰的 API setOldSkuPurchaseToken, 已移除setReplaceProrationModesetReplaceSkusProrationMode」。

處理已移除的其他結帳系統 API

已移除 BillingClient.Builder.enableAlternativeBilling AlternativeBillingListener。 和 AlternativeChoiceDetails。 開發人員應將 BillingClient.Builder.enableUserChoiceBilling()UserChoiceBillingListener 搭配使用 和UserChoiceDetails 傳回的結果。

選擇性變更

PBL 7 內含兩個新的選用 API。

支援預付方案未完成的交易

請參閱「處理訂閱和待處理交易」指南。

虛擬分期付款訂閱

請參閱分期付款訂閱整合指南, 。