2011-12-05 8 views
29

Sto implementando la fatturazione in-app in un gioco Android e vogliamo utilizzare un server per memorizzare le informazioni di acquisto.Come verifichiamo la ricevuta di fatturazione in-app Android sul lato server?

Secondo quanto ho capito finora, Android Market restituirà una chiamata all'app sotto forma di ricevitore Broadcast sullo stato dell'acquisto. Ma dal momento che stiamo persistendo le informazioni sulla transazione sul server, la mia app deve fare qualche richiesta http e aggiornare il mio server. C'è una possibilità molto alta che questa richiesta di post http possa essere imitata manualmente da qualche hacker. Come convalidare le informazioni sulla ricevuta del mercato Android dal mio codice server?

È disponibile una richiamata di Google Checkout sul mio server? O c'è un modo per convalidare la risposta IAB fornita dal client http è autentico ed è un acquisto fatto solo nella mia app!

Sul processo di Apple IOS IAP, they have a validate web API @https://sandbox.itunes.apple.com/verifyReceipt per il quale siamo in grado di passare

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

e si dice se la ricevuta è corretta o meno. Abbiamo qualcosa del genere per Android?

risposta

23

Aggiornamento: È possibile utilizzare il metodo getPurchases() per recuperare "un-consumato" acquisti, come spiegato nella documentazione per gli sviluppatori:
http://developer.android.com/google/play/billing/billing_reference.html#getPurchases

Risposta originale (ora fuori data)

L'API di Google Checkout è obsoleta. Ora dovresti utilizzare l'API dello stato di acquisto.

Se si prevede di utilizzare l'API di acquisto di stato, il link qui sopra menziona queste limitazioni:

  • È possibile utilizzare l'API per controllare lo stato di soli singoli elementi - le richieste di massa per lo stato dell'ordine non sono supportati questa volta.
  • È possibile richiedere i dettagli degli ordini effettuati a partire dal 12 giugno 2013, ma non per gli ordini effettuati in precedenza.
  • È possibile interrogare gli acquisti di qualsiasi tipo di articolo effettuato con l'API di fatturazione in-app v3 o gli acquisti di articoli gestiti realizzati con la fatturazione in-app v1 e v2. Non è possibile utilizzare l'API dello stato di acquisto per eseguire query sugli acquisti di articoli non gestiti effettuati con la fatturazione in-app v1 o v2.
+0

il collegamento è andato, si limita a reindirizzare a https://developer.android.com/google/play/developer-api.html#overview –

+0

Grazie, ho aggiornato la risposta in modo che spero che sia un po 'più attuale. –

3

EDIT: questa risposta è obsoleta, vedere la risposta di Dan J.

Non c'è una richiamata, ma Google Checkout ha un'API. Le tue risposte sono here.

+0

Questa risposta è obsoleto, e Dan J è giusto. Possa il PO accettarlo. –

Problemi correlati