Gestionar errores en el SDK de Android

Cada error devuelto por el SDK es de tipo AdaptyError.

Activa los logs detallados antes de depurar. La mayoría de los AdaptyError envuelven un error subyacente de Play Billing, de red o del backend. Con los logs detallados activados (Adapty.logLevel = AdaptyLogLevel.VERBOSE — consulta Logging), ese error envuelto se imprime en la consola, lo que normalmente te indica la causa real.

Si estas soluciones no resuelven tu problema, consulta Otros problemas para ver los pasos que debes seguir antes de contactar con el soporte y así ayudarnos a asistirte de forma más eficiente.

ErrorSolución
UNKNOWNEste error indica que ocurrió un error desconocido o inesperado.
ITEM_UNAVAILABLEEste error ocurre principalmente durante la fase de pruebas. Puede significar que los productos no están en producción o que el usuario no pertenece al grupo de Testers en Google Play.
ADAPTY_NOT_INITIALIZEDEl SDK de Adapty no está activado.
Lo más habitual es que ocurra cuando una pantalla de inicio u otro hook de UI temprano llama a métodos de Adapty antes de que Adapty.activate haya terminado. El síntoma es intermitente y puede no reproducirse en un emulador porque los tiempos en dispositivos reales son distintos. Espera a que Adapty.activate finalice antes de ejecutar cualquier otra llamada al SDK. Consulta Orden de llamadas en el SDK de Android para ver la secuencia completa. También debes configurar el SDK de Adapty correctamente usando el método Adapty.activate.
PROFILE_WAS_CHANGEDEl perfil del usuario cambió durante la operación.
Esto ocurre cuando se llama a un método mientras Adapty.identify todavía está en curso: la llamada en vuelo aterriza en un perfil que está a punto de ser reemplazado y el SDK la rechaza. Espera a que Adapty.identify finalice antes de ejecutar otras llamadas al SDK. Consulta Orden de llamadas en el SDK de Android.
PRODUCT_NOT_FOUNDEste error indica que el producto solicitado para la compra no está disponible en el store.
INVALID_JSON

El JSON del paywall de respaldo local no es válido.

Corrige tu paywall en inglés predeterminado y luego reemplaza los paywalls locales no válidos. Consulta el tema Personalizar el paywall con Remote Config para saber cómo corregir un paywall, y Definir paywalls de respaldo locales para saber cómo reemplazar los paywalls locales.

CURRENT_SUBSCRIPTION_TO_UPDATE

_NOT_FOUND_IN_HISTORY

La suscripción original que debe reemplazarse no se encontró en las suscripciones activas.
BILLING_SERVICE_TIMEOUTEste error indica que la solicitud alcanzó el tiempo de espera máximo antes de que Google Play pudiera responder. Puede deberse, por ejemplo, a un retraso en la ejecución de la acción solicitada por la llamada a la Play Billing Library.
FEATURE_NOT_SUPPORTEDLa función solicitada no es compatible con la Play Store en el dispositivo actual.
BILLING_SERVICE_DISCONNECTEDEste error indica que la conexión de la app cliente con el servicio de Google Play Store a través del BillingClient se ha interrumpido.
BILLING_SERVICE_UNAVAILABLEEste error indica que el servicio de facturación de Google Play no está disponible en este momento. En la mayoría de los casos significa que hay un problema de conexión de red entre el dispositivo cliente y los servicios de Google Play Billing.
BILLING_UNAVAILABLE

Este error indica que ocurrió un problema de facturación durante el proceso de compra. Las posibles causas son:

1. La app de Play Store en el dispositivo del usuario no está instalada o está desactualizada.

2. El usuario se encuentra en un país no compatible.

3. El usuario forma parte de una cuenta empresarial cuyo administrador ha desactivado las compras.

4. Google Play no pudo cargar el método de pago del usuario (por ejemplo, una tarjeta de crédito caducada).

5. El usuario no ha iniciado sesión en la app de Play Store.

DEVELOPER_ERROREste error indica que estás usando una API de forma incorrecta.
BILLING_ERROREste error indica un problema interno del propio Google Play.
ITEM_ALREADY_OWNEDEl producto ya fue comprado anteriormente.
ITEM_NOT_OWNEDEste error indica que la acción solicitada sobre el ítem falló porque el usuario no es su propietario.
BILLING_NETWORK_ERROREste error indica que hubo un problema con la conexión de red entre el dispositivo y los sistemas de Play.
NO_PRODUCT_IDS_FOUND

Este error indica que ninguno de los productos del paywall está disponible en el store.

Si encuentras este error, sigue los pasos a continuación para resolverlo:

  1. Comprueba que todos los productos se hayan añadido al Adapty Dashboard.
  2. Asegúrate de que el Package name de tu app coincide con el de Google Play Console.
  3. Verifica que los identificadores de producto de los stores coincidan con los que has añadido al Dashboard. Ten en cuenta que los identificadores no deben incluir el Bundle ID, a menos que ya esté incluido en el store.
  4. Confirma que el estado de pago de la app sea Active en la configuración fiscal de Google. Asegúrate de que tu información fiscal esté actualizada y que tus certificados sean válidos.
  5. Comprueba que haya una cuenta bancaria vinculada a la app para que sea elegible para la monetización.
  6. Verifica si los productos están disponibles en tu región.
  7. Asegúrate de que tu app esté en uno de los tracks de prueba. El track Internal testing es la opción más sencilla, ya que no requiere revisión y mantiene la app oculta para los clientes.
NO_PURCHASES_TO_RESTOREEste error indica que Google Play no encontró ninguna compra para restaurar.
AUTHENTICATION_ERRORDebes configurar el SDK de Adapty correctamente usando el método Adapty.activate.
BAD_REQUESTSolicitud incorrecta.
Asegúrate de haber completado todos los pasos necesarios para integrarte con Google Play.
SERVER_ERRORError del servidor.
REQUEST_FAILEDEste error indica un problema de red que no se puede definir con precisión.
DECODING_FAILEDNo fue posible decodificar la respuesta.
Revisa tu código y asegúrate de que los parámetros que envías son válidos. Por ejemplo, este error puede indicar que estás usando una clave API no válida.
ANALYTICS_DISABLEDNo podemos gestionar eventos de análisis porque los has desactivado.
WRONG_PARAMETEREste error indica que alguno de tus parámetros no es correcto: está en blanco cuando no puede estarlo, es del tipo incorrecto, etc.

Otros problemas

Si todavía no has encontrado una solución, los siguientes pasos pueden ser:

  • Actualizar el SDK a la última versión: Siempre recomendamos actualizar a las últimas versiones del SDK, ya que son más estables e incluyen correcciones de problemas conocidos.
  • Contactar al equipo de soporte u obtener ayuda de otros desarrolladores en el foro de soporte.
  • Contactar al equipo de soporte a través de [email protected] o por el chat: Si no puedes actualizar el SDK o la actualización no resolvió el problema, contacta a nuestro equipo de soporte. Ten en cuenta que tu problema se resolverá más rápido si activas el registro detallado y compartes los logs con el equipo. También puedes adjuntar fragmentos de código relevantes.