¿Cuándo la aplicación Android obtiene el estado "Vencido" después de cancelar la suscripción durante el período de prueba
Hay una "Suscripción con prueba gratuita" en mi aplicación Android, y el Servicio de Facturación obtendría el estado Comprado después de comprar el producto de suscripción.
Sin embargo, el servicio de facturación no obtiene el estado caducado después de cancelar la suscripción.
- Facturación de Google Play: no se pudo verificar la firma de sku android.test.purchased
- Prueba de facturación de aplicaciones en otros países
- ¿Qué cuenta de Google Play utiliza IabHelper?
- API de facturación v3 IabHelper NullPointerException
- InappBilling Se requiere autenticación de error. Debes iniciar sesión en tu cuenta de Google
Sin embargo, accroding a Android Developer ,
"Si es necesario, el usuario puede cancelar la suscripción en cualquier momento durante el período de prueba, en este caso, Google Play marca la suscripción como expirada inmediatamente, en lugar de esperar hasta el final del período de prueba".
Pero Mi aplicación no obtiene el estado.
Me pregunto cuándo la aplicación android obtiene el estado "Expirado" después de cancelar la suscripción durante el período de prueba.
- "Regalo" en una aplicación en Android de compra
- Cupones para la facturación integrada en la aplicación
- Android Cómo obtener la lista de productos de la consola de GooglePlay
- Id de pedido de suscripciones de Android
- En el IAB de Google, ¿puedo obtener el título y el precio del producto antes de llamar al método launchpurchaseflow?
- Límite máximo de artículos en la facturación de la aplicación o en la compra de la aplicación
- Redireccionar usuario a la página de suscripción en la tienda de reproducción
- ConsumerState de la API de desarrolladores de Google Play para Android
También he notado esto. En mi caso, el estado de compra sólo cambió al final del período de prueba (de 7 días), aunque he cancelado dentro de los minutos de haber comprado la suscripción de prueba.
Actualmente estoy esperando a que otro juicio cancelado expire – ha pasado 3 días y el estado de compra todavía es 0 ("comprado con éxito").
Actualización: Por lo tanto, parece que o bien necesita restaurar las transacciones periódicamente (Google dice que no debe hacer esto "debido a los impactos de rendimiento") o necesita un servidor web con código para comprobar los detalles de la suscripción utilizando la API del lado del servidor http: //developer.android.com/google/play/billing/v2/billing_subscriptions.html#play-dev-api . Su aplicación podría consultar a su servidor web, que sólo se vería con los servicios de Google cuando se haya alcanzado la fecha de caducidad.
He probado este caso en un entorno sin pruebas, es decir, entorno productivo.
Recibí una notificación ACTION_PURCHASE_STATE_CHANGED con estado EXPIRED unas 4 horas después de cancelar la suscripción. (He cancelado la suscripción unos minutos después de la compra.El período de prueba es de 7 días)
Intentar volver a comprar la suscripción después de la notificación EXPIRED devolvió "Ya poseía" un par de veces, y después de eso pude volver a comprar (sin el período de prueba, según lo documentado).
No tengo la API del servidor de Google implementada, así que no sé cuál sería el estado. Sin embargo, en el sitio del comerciante, el pedido y la descarga de CSV de pedido muestran el elemento como CARGADO.
Entonces, ¿qué ha cambiado desde la respuesta anterior?
- Entorno productivo frente al entorno de prueba de Google
- Posiblemente una corrección de errores de Google
Una vez que aplique la consulta API del servidor de Google, actualizaré esta respuesta.
ACTUALIZAR:
He implementado la comprobación de la API de Google Server y muestra correctamente que la suscripción se canceló unos minutos después de la compra. Esta comprobación API se realizó 3 días después de la compra, bien dentro de la prueba de 7 días.
Mi conclusión en este momento es que las cancelaciones de usuarios dentro del período de prueba son manejadas correctamente por Google.
- Cómo copiar activos de depuración para pruebas de unidad
- Android: Interrumpir el hilo contenido en un método