2012-04-25 11 views
15

Estoy tratando de implementar una funcionalidad de compra en la aplicación con la ayuda de la biblioteca net.robotmedia.billing.Androidmedia-app de Android: Restaurar transacciones

La compra de un artículo integrado (administrado) funciona: la compra se realiza, hay un pedido en google checkout, y más tarde cuando reinicio el dispositivo, al restaurar las transacciones, el estado de "compra" puede ser recuperado.

Cuando desinstalo y reinstalo la aplicación, después de restaurar las transacciones, se puede detectar el estado de la compra. Sin embargo, esta vez algo (probablemente la aplicación Market) envía una notificación de "Compra fallida". El historial de transacciones (después de una compra) siempre es: 8x Transaction.PurchaseState.CANCELLED seguido de uno Transaction.PurchaseState.PURCHASED.

La "compra falló". Se envía una notificación aunque no se haya realizado ninguna compra. En la inicialización hago:

BillingController.setConfiguration(mConfiguration); 
BillingController.registerObserver(myBillingObserver); 
... 
BillingController.checkBillingSupported(this); 
BillingController.restoreTransactions(this); 

Todo parece funcionar, solo que recibo esta notificación. ¿Cómo me deshago de esta notificación? ¿O tal vez hay algo que podría haber perdido?

ACTUALIZACIÓN: Las transacciones canceladas mencionadas anteriormente son solo el historial correcto. Todavía la aplicación de mercado (supongo) envía una notificación de "Compra fallida" en RESTORE_TRANSACTIONS (supongo que cuando reciba estas transacciones canceladas).

Quizás esto no es importante ya que un usuario no cancela, vuelve a comprar, cancela, vuelve a comprar, etc. Pero una vez que se cancela una transacción, el usuario recibirá esta notificación cada vez que se procese, lo cual es molesto (y confuso para el usuario).

+0

¿La compra se gestiona o no se administra? Puede iniciar sesión en la billetera de google con la cuenta que compró y verificar su transacción. – Ankit

+0

@Ankit: gracias. Se logró, creo. Ha pasado un tiempo desde eso. Tengo que ver eso más tarde también. –

Respuesta

3

intente utilizar InApp versión 3.0, la referencia está disponible here. el equipo de Google lo hizo muy fácil para los desarrolladores. no hay ningún servicio en absoluto, realmente simple y me funcionaba muy bien ...

+0

Actualmente no trabajo en Android, pero una vez que tenga tiempo, lo verificaré. Se ve mucho más fácil. +1 para el enlace. –

Cuestiones relacionadas