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.
| Error | Solución |
|---|---|
| UNKNOWN | Este error indica que ocurrió un error desconocido o inesperado. |
| ITEM_UNAVAILABLE | Este 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_INITIALIZED | El 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_CHANGED | El 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_FOUND | Este 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_TIMEOUT | Este 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_SUPPORTED | La función solicitada no es compatible con la Play Store en el dispositivo actual. |
| BILLING_SERVICE_DISCONNECTED | Este 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_UNAVAILABLE | Este 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_ERROR | Este error indica que estás usando una API de forma incorrecta. |
| BILLING_ERROR | Este error indica un problema interno del propio Google Play. |
| ITEM_ALREADY_OWNED | El producto ya fue comprado anteriormente. |
| ITEM_NOT_OWNED | Este error indica que la acción solicitada sobre el ítem falló porque el usuario no es su propietario. |
| BILLING_NETWORK_ERROR | Este 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:
|
| NO_PURCHASES_TO_RESTORE | Este error indica que Google Play no encontró ninguna compra para restaurar. |
| AUTHENTICATION_ERROR | Debes configurar el SDK de Adapty correctamente usando el método Adapty.activate. |
| BAD_REQUEST | Solicitud incorrecta. Asegúrate de haber completado todos los pasos necesarios para integrarte con Google Play. |
| SERVER_ERROR | Error del servidor. |
| REQUEST_FAILED | Este error indica un problema de red que no se puede definir con precisión. |
| DECODING_FAILED | No 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_DISABLED | No podemos gestionar eventos de análisis porque los has desactivado. |
| WRONG_PARAMETER | Este 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.