Pregunta

Estoy implementando la facturación en la aplicación en un juego de Android y queremos usar un servidor para almacenar la información de compra.

Según lo que entendí hasta ahora, Android Market le devolverá una devolución de llamada a la aplicación en forma de receptor de transmisión sobre el estado de compra. Pero dado que estamos persistiendo la información de transacción en el servidor, mi aplicación debe hacer una solicitud de publicación HTTP y actualizar mi servidor. Existe una posibilidad de que esta solicitud de publicación HTTP pueda ser imitada por algún hacker manualmente. ¿Cómo valido esa información de recibo del mercado de Android de mi código de servidor?

¿Hay alguna devolución de llamada de Google Checkout a mi servidor disponible? ¿O hay alguna manera de validar la respuesta IAB proporcionada por el cliente HTTP es genuina y es una compra realizada solo en mi aplicación!

En el proceso Apple iOS IAP, Tienen una API web validación @ https://sandbox.itunes.apple.com/verifyreceipt para el cual podemos pasar

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

y dice si el recibo es apropiado o no. ¿Tenemos algo así para Android?

¿Fue útil?

Solución

Actualizar: Puedes usar el getPurchases() Método para recuperar compras "no consumidas", como se explica en los documentos del desarrollador:
http://developer.android.com/google/play/billing/billing_reference.html#getpurchas

Respuesta original (ahora desactualizado)

La API de Google Checkout está en desuso. Ahora debería usar la API de estado de compra.

Si planea usar la API de estado de compra, el enlace anterior menciona estas limitaciones:

  • Puede usar la API para verificar el estado de los elementos individuales: las solicitudes masivas de estado del pedido no son compatibles en este momento.
  • Puede consultar los detalles de los pedidos realizados a partir del 12 de junio de 2013, pero no para los pedidos realizados anteriormente.
  • Puede consultar compras de cualquier tipo de artículo realizado con la API V3 de facturación en la aplicación o compras de artículos administrados realizados con facturación en la aplicación V1 y V2. No puede usar la API de estado de compra para consultar compras de artículos no administrados hechos con facturación en la aplicación V1 o V2.

Otros consejos

Editar: esta respuesta es obsoleta, vea la respuesta de Dan J.

No hay devolución de llamada, pero Google Checkout tiene una API. Tus respuestas son aquí.

Esta es una publicación antigua, pero espero ayudar a otros.

Hay una manera de validar las compras del lado del servidor, debe usar esta API REST.

https://developers.google.com/android-publisher/api-ref/purchase/products/get

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top