Tài liệu này mô tả cách di chuyển từ Thư viện Google Play Billing 5 hoặc 6 sang Thư viện Google Play Billing 7 và cách tích hợp với các tính năng mới không bắt buộc dành cho gói thuê bao.
Để biết danh sách đầy đủ các thay đổi trong phiên bản 7.0.0, hãy tham khảo ghi chú phát hành.
Tổng quan
Thư viện Google Play Billing 7 cải thiện quy trình xử lý thanh toán cho các tính năng hiện có của gói thuê bao. Những điểm cải tiến không bắt buộc này bổ sung tính năng hỗ trợ thanh toán bằng gói trả góp cũng như hỗ trợ giao dịch mua đang chờ xử lý cho gói thuê bao trả trước.
Bản nâng cấp tương thích ngược cho Thư viện Play Billing
Tất cả API mới của Thư viện Google Play Billing 7 đều không bắt buộc và nhà phát triển không cần triển khai bất kỳ thay đổi nào về API để cập nhật.
Để di chuyển, bạn cần cập nhật Tài liệu tham khảo API và loại bỏ một số API nhất định khỏi ứng dụng của mình như mô tả trong ghi chú phát hành và phần sau của hướng dẫn di chuyển này.
Nâng cấp từ PBL 5 lên PBL 7
Các phần sau đây mô tả cách nâng cấp từ PBL 5 lên PBL 7.
Cập nhật Thư viện Google Play Billing
Cập nhật phiên bản phần phụ thuộc Thư viện Play Billing trong tệp build.gradle của ứng dụng.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
Tiếp theo, hãy cập nhật tài liệu tham khảo API như mô tả trong các phần sau.
Thay đổi giao dịch mua gói thuê bao của người dùng
Thư viện Play Billing 5 trở xuống sử dụng ProrationMode để áp dụng các thay đổi đối với giao dịch mua gói thuê bao của người dùng, chẳng hạn như nâng cấp hoặc hạ cấp. API này đã bị xoá và thay thế bằng ReplacementMode.
Xử lý thay đổi về giá của gói thuê bao
API launchPriceConfirmationFlow không dùng nữa trước đó đã bị xoá.
Để biết các lựa chọn thay thế, hãy xem hướng dẫn về thay đổi giá.
Xử lý các thay đổi về API liên quan đến gói thuê bao
Các API không dùng nữa trước đây là setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode đã bị xoá.
- Cập nhật
setOldSkuPurchaseTokenlênsetOldPurchaseToken. - Cập nhật
setReplaceProrationModelênsetSubscriptionReplacementMode. - Cập nhật
setReplaceSkusProrationModelênsetSubscriptionReplacementMode.
Xử lý lỗi trong Thư viện Play Billing
Mã NETWORK_ERROR mới cho biết sự cố về kết nối mạng giữa thiết bị của người dùng và hệ thống Google Play.
Mã SERVICE_TIMEOUT và SERVICE_UNAVAILABLE cũng được cập nhật.
Để biết thêm thông tin, hãy xem phần Xử lý mã phản hồi BillingResult.
Xử lý các giao dịch đang chờ xử lý
Thư viện Play Billing không còn tạo mã đơn đặt hàng cho các giao dịch mua đang chờ xử lý.
Đối với các giao dịch mua này, mã đơn đặt hàng sẽ được điền sau khi giao dịch mua được chuyển sang trạng thái PURCHASED. Hãy đảm bảo rằng tiện ích tích hợp của bạn chỉ nhận mã đơn đặt hàng sau khi giao dịch hoàn tất. Bạn vẫn có thể sử dụng mã thông báo giao dịch mua để ghi lại hồ sơ.
Để biết thêm thông tin về cách xử lý các giao dịch mua đang chờ xử lý, hãy xem hướng dẫn tích hợp của Thư viện Play Billing và hướng dẫn quản lý vòng đời giao dịch mua.
Xử lý các API hệ thống thanh toán thay thế đã bị xoá
Đã xoá
BillingClient.Builder.enableAlternativeBilling,
AlternativeBillingListener và
AlternativeChoiceDetails. Thay vào đó, hãy sử dụng BillingClient.Builder.enableUserChoiceBilling() với UserChoiceBillingListener và UserChoiceDetails trong lệnh gọi lại của trình nghe.
Bản cập nhật này đổi tên các API không dùng nữa mà không thay đổi hành vi.
Các thay đổi không bắt buộc
PBL 7 bao gồm hai API mới không bắt buộc.
Hỗ trợ giao dịch mua đang chờ xử lý cho gói trả trước
Xem hướng dẫn Xử lý gói thuê bao và giao dịch đang chờ xử lý.
Gói thuê bao trả góp ảo
Xem hướng dẫn Tích hợp gói thuê bao trả góp.
Nâng cấp từ PBL 6 lên PBL 7
Các phần sau đây mô tả cách nâng cấp từ PBL 6 lên PBL 7.
Cập nhật Thư viện Google Play Billing
Cập nhật phiên bản phần phụ thuộc Thư viện Play Billing trong tệp build.gradle của ứng dụng.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
Tiếp theo, hãy cập nhật tài liệu tham khảo API như mô tả trong các phần sau.
Xử lý các thay đổi về API liên quan đến gói thuê bao
Các API không dùng nữa trước đây là setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode đã bị xoá.
- Cập nhật
setOldSkuPurchaseTokenlênsetOldPurchaseToken. - Cập nhật
setReplaceProrationModelênsetSubscriptionReplacementMode. - Cập nhật
setReplaceSkusProrationModelênsetSubscriptionReplacementMode.
Xử lý các API hệ thống thanh toán thay thế đã bị xoá
Đã xoá
BillingClient.Builder.enableAlternativeBilling,
AlternativeBillingListener và
AlternativeChoiceDetails. Thay vào đó, hãy sử dụng BillingClient.Builder.enableUserChoiceBilling() với UserChoiceBillingListener và UserChoiceDetails trong lệnh gọi lại của trình nghe.
Các thay đổi không bắt buộc
PBL 7 bao gồm hai API mới không bắt buộc.
Hỗ trợ giao dịch mua đang chờ xử lý cho gói trả trước
Xem hướng dẫn Xử lý gói thuê bao và giao dịch đang chờ xử lý.
Gói thuê bao trả góp ảo
Hãy xem hướng dẫn Tích hợp gói thuê bao trả góp để biết thông tin về cách tích hợp những thay đổi này vào ứng dụng của bạn.