2011-12-05 27 views
29

Tôi đang triển khai thanh toán trong ứng dụng vào trò chơi Android và chúng tôi muốn sử dụng máy chủ để lưu trữ thông tin mua hàng.Làm cách nào để chúng tôi xác minh biên lai thanh toán trong ứng dụng Android ở phía máy chủ?

Theo những gì tôi đã hiểu cho đến thời điểm này, Android Market sẽ trả về cuộc gọi lại cho ứng dụng dưới dạng bộ thu phát sóng về trạng thái mua hàng. Nhưng kể từ khi chúng tôi kiên trì thông tin giao dịch trên máy chủ, ứng dụng của tôi phải thực hiện một số yêu cầu đăng bài http và cập nhật máy chủ của tôi. Có một khả năng rất cao là yêu cầu đăng bài http này có thể được bắt chước bởi một số hacker theo cách thủ công. Làm cách nào để xác thực thông tin biên nhận thị trường Android từ mã máy chủ của tôi?

Có bất kỳ cuộc gọi trả lại Google nào đối với máy chủ của tôi không? Hoặc là có cách để xác thực phản hồi IAB được cung cấp bởi ứng dụng http là chính hãng và đó là một giao dịch mua được thực hiện chỉ trong ứng dụng của tôi!

Trên quá trình Apple IOS IAP, they have a validate web API @https://sandbox.itunes.apple.com/verifyReceipt mà chúng ta có thể vượt qua

req.method = URLRequestMethod.POST; 
req.data = "{\"receipt-data\" : \""+ t.receipt +"\"}"; 

và nó nói nếu nhận là đúng đắn hay không. Chúng ta có một cái gì đó như thế cho Android?

Trả lời

23

Cập nhật: Bạn có thể sử dụng phương pháp getPurchases() để lấy "un-tiêu thụ" mua hàng, như được giải thích trong tài liệu phát triển:
http://developer.android.com/google/play/billing/billing_reference.html#getPurchases

gốc trả lời (nay là hết hạn)

API Google Checkout không được dùng nữa. Bây giờ bạn nên sử dụng API trạng thái mua hàng.

Nếu bạn có kế hoạch để sử dụng API mua hàng Status, liên kết ở trên đề cập đến những hạn chế:

  • Bạn có thể sử dụng API để kiểm tra tình trạng của chỉ mục cá nhân - yêu cầu số lượng lớn cho tình trạng đơn hàng không được hỗ trợ tại thời gian này.
  • Bạn có thể truy vấn chi tiết các đơn đặt hàng được đặt vào hoặc sau ngày 12 tháng 6 năm 2013, nhưng không thể cho các đơn hàng được đặt trước đó.
  • Bạn có thể truy vấn mua bất kỳ loại mục nào được thực hiện bằng API thanh toán trong ứng dụng v3 hoặc mua các mặt hàng được quản lý được thực hiện bằng Thanh toán trong ứng dụng v1 và v2. Bạn không thể sử dụng API trạng thái mua hàng để truy vấn mua các mặt hàng không được quản lý được thực hiện bằng Thanh toán trong ứng dụng phiên bản 1 hoặc v2.
+0

liên kết đã biến mất, nó chỉ chuyển hướng đến https://developer.android.com/google/play/developer-api.html#overview –

+0

Cảm ơn, tôi đã cập nhật câu trả lời để hy vọng nó hiện hữu hơn một chút. –

3

EDIT: câu trả lời này đã lỗi thời, xem câu trả lời của Dan J.

Không có gọi lại, nhưng Google Checkout có API. Câu trả lời của bạn là here.

+0

Câu trả lời này đã lỗi thời và Dan J là đúng. Có thể OP chấp nhận điều đó. –

Các vấn đề liên quan