Xử lý sự cố mua hàng trong Android SDK
Hướng dẫn này giúp bạn giải quyết các vấn đề thường gặp khi triển khai mua hàng thủ công trong Android SDK.
makePurchase được gọi thành công nhưng hồ sơ người dùng không được cập nhật
Vấn đề: Phương thức makePurchase hoàn thành thành công, nhưng hồ sơ người dùng và trạng thái gói đăng ký không được cập nhật trong Adapty.
Nguyên nhân: Thường là do thiết lập Google Play Store chưa đầy đủ hoặc có vấn đề về cấu hình.
Giải pháp: Đảm bảo bạn đã hoàn thành tất cả các bước thiết lập Google Play.
makePurchase bị gọi hai lần
Vấn đề: Phương thức makePurchase đang được gọi nhiều lần cho cùng một giao dịch mua.
Nguyên nhân: Điều này thường xảy ra khi flow mua hàng được kích hoạt nhiều lần do vấn đề quản lý trạng thái UI hoặc người dùng thao tác quá nhanh.
Giải pháp: Đảm bảo bạn đã hoàn thành tất cả các bước thiết lập Google Play.
AdaptyError.cantMakePayments trong chế độ observer
Vấn đề: Bạn nhận được AdaptyError.cantMakePayments khi sử dụng makePurchase trong chế độ observer.
Nguyên nhân: Trong chế độ observer, bạn nên tự xử lý các giao dịch mua ở phía mình, không dùng phương thức makePurchase của Adapty.
Giải pháp: Nếu bạn dùng makePurchase để thực hiện mua hàng, hãy tắt chế độ observer. Bạn cần chọn một trong hai: dùng makePurchase hoặc tự xử lý mua hàng ở phía mình trong chế độ observer. Xem Triển khai chế độ Observer để biết thêm chi tiết.
Lỗi Adapty: (code: 103, message: Play Market request failed on purchases updated: responseCode=3, debugMessage=Billing Unavailable, detail: null)
Vấn đề: Bạn nhận được lỗi billing không khả dụng từ Google Play Store.
Nguyên nhân: Lỗi này không liên quan đến Adapty. Đây là lỗi của Google Play Billing Library, cho biết tính năng thanh toán không khả dụng trên thiết bị.
Giải pháp: Lỗi này không liên quan đến Adapty. Bạn có thể tìm hiểu thêm trong tài liệu Play Store: Handle BillingResult response codes | Play Billing | Android Developers.
Không tìm thấy makePurchasesCompletionHandlers
Vấn đề: Bạn gặp sự cố với makePurchasesCompletionHandlers không được tìm thấy.
Nguyên nhân: Thường liên quan đến các vấn đề khi kiểm thử trong môi trường sandbox.
Giải pháp: Tạo người dùng sandbox mới và thử lại. Cách này thường giải quyết được các vấn đề về purchase completion handler trong môi trường sandbox.
Các vấn đề khác
Vấn đề: Bạn gặp phải các vấn đề liên quan đến mua hàng khác chưa được đề cập ở trên.
Giải pháp: Nếu cần, hãy migrate SDK lên phiên bản mới nhất theo hướng dẫn migration. Nhiều vấn đề đã được khắc phục trong các phiên bản SDK mới hơn.