Solucionar problemas de compras en el SDK de Android

Esta guía te ayuda a resolver los problemas más comunes al implementar compras manualmente en el SDK de Android.

makePurchase se llama correctamente, pero el perfil no se actualiza

Problema: El método makePurchase se completa correctamente, pero el perfil del usuario y el estado de la suscripción no se actualizan en Adapty.

Causa: Esto generalmente indica una configuración incompleta de Google Play Store.

Solución: Asegúrate de haber completado todos los pasos de configuración de Google Play.

makePurchase se invoca dos veces

Problema: El método makePurchase se llama varias veces para la misma compra.

Causa: Esto suele ocurrir cuando el flujo de compra se activa varias veces debido a problemas en la gestión del estado de la interfaz o a interacciones muy rápidas del usuario.

Solución: Asegúrate de haber completado todos los pasos de configuración de Google Play.

AdaptyError.cantMakePayments en el modo observador

Problema: Recibes AdaptyError.cantMakePayments al usar makePurchase en el modo observador.

Causa: En el modo observador, debes gestionar las compras por tu cuenta y no usar el método makePurchase de Adapty.

Solución: Si usas makePurchase para las compras, desactiva el modo observador. Tienes que elegir entre usar makePurchase o gestionar las compras por tu cuenta en el modo observador. Consulta Implementar el modo observador para más detalles.

Error de Adapty: (code: 103, message: Play Market request failed on purchases updated: responseCode=3, debugMessage=Billing Unavailable, detail: null)

Problema: Recibes un error de facturación no disponible de Google Play Store.

Causa: Este error no está relacionado con Adapty. Es un error de la biblioteca de facturación de Google Play que indica que la facturación no está disponible en el dispositivo.

Solución: Este error no está relacionado con Adapty. Puedes encontrar más información en la documentación de Play Store: Handle BillingResult response codes | Play Billing | Android Developers.

No se encuentran makePurchasesCompletionHandlers

Problema: Tienes problemas porque no se encuentran los makePurchasesCompletionHandlers.

Causa: Esto suele estar relacionado con problemas en las pruebas en sandbox.

Solución: Crea un nuevo usuario de sandbox e inténtalo de nuevo. Esto suele resolver los problemas con los manejadores de finalización de compras en entornos sandbox.

Otros problemas

Problema: Experimentas otros problemas relacionados con compras que no se tratan anteriormente.

Solución: Si es necesario, migra el SDK a la versión más reciente siguiendo las guías de migración. Muchos problemas se resuelven en versiones más nuevas del SDK.