tinder solicitar restaurar reembolso quejas por play pago hijo google compras comprado como cancelar android billing in-app

android - restaurar - solicitar reembolso



¿Cómo cancelar una compra de prueba en la aplicación en Android? (5)

Todos los productos gestionados en la aplicación son consumibles.

como se indica en los docs .

Eso significa que puede consumir un artículo de propiedad en lugar de cancelar la compra y comprarlo de nuevo. Sugiero consultar el inventario en el momento de lanzamiento de la aplicación:

mIabHelper.queryInventoryAsync(this);

A continuación, puede consumir el elemento de propiedad en la devolución de llamada:

@Override public void onQueryInventoryFinished(IabResult result, Inventory inventory) { Purchase purchase = inventory.getPurchase(MY_SKU); boolean isBought = (purchase != null && verifyDeveloperPayload(purchase)); if (isBought) { mIabHelper.consumeAsync(purchase, new OnConsumeFinishedListener() { @Override public void onConsumeFinished(Purchase purchase, IabResult result) { //Clear the purchase info from persistent storage } }); } }

Esto está bien para probar el flujo de IAB, pero asegúrese de eliminar este código de la versión de lanzamiento.

Hasta el 20 de junio de 2016, pude cancelar las compras de prueba realizadas en mi aplicación. Hacer múltiples compras dentro de la aplicación (no consumibles) desde la misma cuenta de prueba facilitó el desarrollo y la prueba del código sin demasiada molestia.

Después del 20 de junio de 2016, las compras no se mostraron en mi cuenta de comerciante y no pude hacer más de 1 compra desde mi cuenta de prueba. Todo lo que obtuve fue el mensaje: "ya tienes este objeto".

Inicié una solicitud al grupo de soporte de desarrolladores de google y la respuesta fue:

A partir del 20 de junio de 2016, cambiamos las compras de prueba para las compras únicas dentro de la aplicación (IAP). Anteriormente, las compras de prueba para IAPs una sola vez generaban ID de pedido. A partir del 20 de junio de 2016, los IAP de una sola vez no generan identificaciones oficiales de órdenes (si es que lo hacen) y no aparecerán en Merchant Center. Este comportamiento ya se aplica a los IAP de suscripción. Puede obtener más información sobre cómo probar la facturación integrada en la aplicación en el Centro de ayuda para desarrolladores de Android: https://developer.android.com/google/play/billing/billing_testing.html#testing-purchases

de acuerdo ... así que voy al enlace mencionado y hay una sección allí: Cancelación de compras de prueba completadas que dice:

Google Play acumula compras de prueba completadas para cada usuario, pero no las transfiere al procesamiento financiero. En algunos casos, es posible que desee cancelar manualmente una compra de prueba para continuar las pruebas. Para hacerlo, abre la página de la aplicación en Play Store. Si la compra de prueba que desea cancelar es una suscripción, también puede usar el método cancel () de la API Purchases.subscriptions. Importante: los métodos refund () y revoke () de la API Purchases.subscriptions no admiten compras de prueba.

Así que voy a la página de la aplicación en Play Store ... ¿y qué hago exactamente? la página web no dice lo que se supone que debo hacer allí. ¿nadie sabe?

dice: también puede usar el método cancel () de la API Purchases.subscriptions.

lo que indica que usar el método cancel () no es el único método.

¿Cómo resolver esto sin agregar código adicional en mi aplicación?


Desde https://.com/a/30178861/326904 @mttmllns

No es necesario escribir ningún código de consumo especial. Simplemente use el comando adb para borrar los datos de Google Play Store:

adb shell pm clear com.android.vending


Encontré una solución que no es muy conveniente, pero funciona. Parece que puedes consumir productos incómodos y de esa manera puedes comprarlos nuevamente. Estoy trabajando con phonegap, así que solo tengo un código de ejemplo para el complemento de compra de plugin de cordova:

store.when("your.product.id").updated(product => { if(product.owned) { var transaction = product.transaction; product.transaction = null; store.inappbilling.consumePurchase( function() { // success alert("consume success"); }, function(err, code) { // error alert("consume error " + err) }, product.id, transaction.id ); } });

Se llama a la devolución de llamada actualizada cuando llama a store.refresh() o compra el producto. Entonces, dependiendo de su caso de uso, desearía implementar un método adicional de verificar cuándo consumir el producto.

No tengo experiencia con los pagos nativos de Android dentro de la aplicación, pero obviamente también podrás consumir los productos allí.

Edición: Lo siento, acabo de leer que no querías incluir código adicional en tu proyecto. No creo que eso sea posible en este momento, pero me gustaría mantener mi respuesta aquí porque podría ayudar a otras personas que intentan probar los pagos dentro de la aplicación.


Entré en la página principal de Google Play Console y hice clic en Administración de pedidos. Debajo de eso, pude seleccionar todas las compras de prueba y reembolsarlas. Soy el desarrollador principal de la aplicación, así que tengo acceso. Si es un probador, probablemente deba contactarse con el equipo de soporte y solicitar que le devuelvan su pedido.


No encontré una solución para esto. Mi solución es simplemente eliminar al usuario de prueba actual de la lista de usuarios de prueba, realizar una compra real y luego cancelarla usando la consola del comerciante.