Android In-App Billing v3: No recibe firmas

Estoy trabajando en una tienda de aplicaciones en mi aplicación, he utilizado AndroidBillingLibrary por robotmedia, cuando compro android.test.purchased utilizando la biblioteca de la respuesta es OK, todos los datos que necesito está allí.

El problema es que, cuando cambié a Android In-App Billing v3, todo esto se recibe de la respuesta, no hay firmas.

{"packageName":"com.my.sampleapp","orderId":"transactionId.android.test.purchased","productId":"android.test.purchased","developerPayload":"","purchaseTime":0,"purchaseState":0,"purchaseToken":"inapp:com.my.sampleapp:android.test.purchased"}

He seguido exactamente este ejemplo https://developer.android.com/training/in-app-billing/preparing-iab-app.html#GetSample pero no hay firmas. Incluso ejecutar la aplicación de muestra dada por Google, pero no hay suerte.

Puse mi clave pública RSA codificada en Base64 correctamente en mHelper = new IabHelper(this, myPublicKey);

Y este es mi código de compra mHelper.launchPurchaseFlow(this, itempackage, 10001, mPurchaseFinishedListener);

 OnIabPurchaseFinishedListener mPurchaseFinishedListener = new OnIabPurchaseFinishedListener() { public void onIabPurchaseFinished(IabResult result, Purchase purchase) { Log.i("Billing", "purchasing: " + result.getMessage()); if (result.isFailure()) { Log.i("Billing", "Error purchasing: " + result); return; } else if (purchase.getSku().equals("android.test.purchased")) { Log.i("Billing - signature", purchase.getSignature()); consumeItems(); } else { Log.i("Billing", "Error purchasing: " + result); } } }; 

De alguna manera mi mPurchaseFinishedListener no está recibiendo nada después de la compra pero el protected void onActivityResult(int requestCode, int resultCode, Intent data) está recibiendo algo pero no hay firma.

¿Hay alguna solución? Es raro que v2 esté recibiendo firmas y v3 no lo es.

No obtiene firmas para los ID de prueba, android.test.purchased, etc.

Recibirá firmas con compras reales.

Como se dijo por Rawkode, ya no obtiene firmas para las compras de prueba (android.test. *). Tomé la inmersión y subí mi aplicación al mercado (no lo publiqué) usando mis productos reales.

Las firmas de bajo y mirar empezaron a ser devueltas! Te recomendamos que modifiques cualquier validación del lado del servidor que estés usando para omitir la comprobación de la firma cuando los datos contengan un android.test. * Item id.

¿Qué quiere decir Signatures? ¿Es eso suscripciones? O un elemento en la aplicación (consumible o no)? Debido a que en la aplicación de Facturación v3 no admite suscripciones en este momento, si desea que la función que tiene que utilizar v2 (https://developer.android.com/google/play/billing/billing_overview.html). Además, asegúrese de que su elemento esté marcado como "un elemento gestionado" en la consola de desarrollo (para Billing v3).

Lo siento si malinterpreté. Además, intente habilitar el modo de depuración en su instancia IabHelper, esto le proporcionará una mejor visión general de su problema.

 mHelper.enableDebugLogging(true, "YOURTAG"); 

Le sugiero que eche un vistazo a la guía de implementación en el sitio web de desarrolladores: https://developer.android.com/google/play/billing/billing_integrate.html

También hay código de ejemplo allí.

  • ¿En la facturación de la aplicación admite varias cuentas?
  • ¿Cómo utilizar la Biblioteca de facturación de Android?
  • Cómo obtener la fecha de caducidad de las suscripciones en la aplicación de Google Play
  • Error al consultar el inventario: Error al actualizar el inventario
  • IabResult: Error al actualizar el inventario (consultar elementos propios)
  • Esta es una orden de prueba, no se le cobrará
  • Comprador de comprobación de compra de Android en la compra sin conexión
  • Facturación en la aplicación: agregar facturación a una aplicación publicada existente
  • ¿Qué identidad de usuario debe utilizarse para recopilar las compras en la aplicación de Google Play?
  • El retorno de API de Google IAB API3 getSkuDetails () falló 5: Error del programador
  • Android RESTORE_TRANSACTIONS devuelve RESULT_SERVICE_UNAVAILABLE
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.