Solucionar problemas de compras en Flutter SDK

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

makePurchase se ejecuta 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 normalmente 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 está llamando varias veces para la misma compra.

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

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

AdaptyError.cantMakePayments en modo observer

Problema: Recibes AdaptyError.cantMakePayments al usar makePurchase en modo observer.

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

Solución: Si usas makePurchase para las compras, desactiva el modo observer. Tienes que elegir entre usar makePurchase o gestionar las compras por tu cuenta en modo observer. Consulta Implementar el modo Observer 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 consultarlo 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 durante las pruebas en sandbox.

Solución: Crea un nuevo usuario sandbox e inténtalo de nuevo. Esto resuelve con frecuencia los problemas del completion handler de compras en sandbox.

Otros problemas

Problema: Tienes otros problemas relacionados con compras que no están cubiertos arriba.

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 recientes del SDK.