Cómo solucionar errores comunes del Administrador de credenciales

En esta guía, se enumeran los códigos de error y las descripciones comunes relacionados con Credential Manager, y se proporciona información sobre sus causas.

Código de error y descripción Causa

android.os.TransactionTooLargeException

Esto se debe a un problema conocido en el que la API de credentialManager.getCredential() en Android 14 y versiones posteriores no muestra el diálogo de acceso cuando hay varias Cuentas de Google en el dispositivo. Este problema se observa específicamente con GetGoogleIdOption y no con GetSignInWithGoogleOption. Este problema se solucionó en la versión 24.40.XX y posteriores de los Servicios de Google Play.

CreateCredentialCancellationException

El usuario canceló el registro o la recuperación de la llave de acceso.

El usuario eligió no crear ni usar una credencial. Ahora puedes ajustar tu IU para ofrecer un método de acceso alternativo o continuar con los siguientes pasos de tu proceso.

GetCredentialCancellationException

Se detuvo el proceso de recuperación de credenciales porque no se obtuvo la autorización del usuario necesaria. Si bien esto ocurre con mayor frecuencia cuando un usuario cancela manualmente el flujo de acceso, también puede indicar que la solicitud no se autorizó debido a limitaciones técnicas. Dado que este error indica una falta de consentimiento, no vuelvas a intentar la solicitud automáticamente, ya que esto genera una experiencia del usuario disruptiva. Sin embargo, los desarrolladores deben supervisar la frecuencia de esta excepción. Un gran volumen de "cancelaciones" puede indicar una configuración incorrecta, como un alcance faltante o incorrecto, que impide que la IU de autorización se complete correctamente. Si observas tendencias inesperadas, revisa los parámetros de la solicitud y la configuración de la [entidad externa][2].

Nota: El mensaje de error puede variar según el tipo de credencial:

  • En el caso de las llaves de acceso, el mensaje de error puede ser "El usuario canceló el registro o la recuperación de la llave de acceso".
  • En el caso de Acceder con Google, el mensaje de error puede ser "El usuario canceló la actividad".

CreateCredentialCustomException o GetCredentialCustomException

Cuando usas un SDK de terceros para realizar llamadas a la API con un objeto de solicitud que subclase CreateCustomCredentialRequest o GetCustomCredentialOption, es posible que encuentres errores. Si esto ocurre, consulta el SDK para ver si hay constantes de tipo de excepción personalizadas que coincidan con e.type. Si no se encuentra ninguna coincidencia, es seguro descartar o registrar la excepción.

CreateCredentialInterruptedException o GetCredentialInterruptedException

Es posible que la operación se haya interrumpido porque el usuario navegó a la configuración para volver a configurar los administradores de contraseñas. Es posible que otros motivos también hayan contribuido a la interrupción. Intenta llamar de nuevo.

CreateCredentialUnknownException

Al guardar la contraseña, se encontró una respuesta de error de contraseña de One Tap 16: [28431] Se omite el guardado de contraseña, ya que es probable que se solicite al usuario la función Autocompletar de Android.

Este error solo afecta a Android 13 y versiones anteriores cuando Google es el proveedor de Autocompletar designado. En estos casos, los usuarios recibirán un mensaje de guardado de Autocompletar y la contraseña se almacenará en el Administrador de contraseñas de Google. Es importante destacar que las credenciales guardadas con Autocompletar con Google se sincronizan de forma bidireccional con la API de Credential Manager. Por lo tanto, este error se puede ignorar sin problemas.

CreatePublicKeyCredentialDomException y GetPublicKeyCredentialDomException

Es probable que la excepción del DOM contenga un domError más específico. Puedes asignarlo a un DomException de WebAuthn para obtener más detalles.

CreatePublicKeyCredentialDomException y GetPublicKeyCredentialDomException

No se puede validar la solicitud entrante.

El servidor del administrador de contraseñas no reconoce el ID de paquete de la app. Esto apunta a un posible problema con la integración del servidor, específicamente con la configuración de la vinculación de activos digitales. Verifica la exactitud del ID y el SHA del paquete en el archivo de vínculos de recursos.

CreatePublicKeyCredentialDomException:

No se pudo crear la clave durante el registro

Este problema puede surgir cuando un usuario descarta el diálogo de bloqueo de pantalla durante el registro.

CreateCredentialNoCreateOptionException

Esta excepción específica indica que el usuario no tiene configurado un administrador de contraseñas válido. Este error no se debe a un flujo de cancelación manual iniciado por el usuario, sino que es una falla independiente.

CreatePublicKeyDomException y GetPublicKeyCredentialDomException

El usuario canceló el registro de la llave de acceso.

El usuario canceló la recuperación de la llave de acceso.

Este problema puede surgir cuando un usuario descarta el diálogo de huella dactilar durante el registro o la recuperación de una llave de acceso.

GetCredentialProviderConfigurationException y CreateCredentialProviderConfigurationException

No se encontraron dependencias del proveedor de getCredentialAsync

No se encontraron dependencias del proveedor de createCredentialAsync

Falta la dependencia androidx.credentials:credentials-play-services-auth:<latest-version>.

GetCredentialUnsupportedException o CreateCredentialUnsupportedException

Tu dispositivo no admite el administrador de credenciales

Asegúrate de que tu biblioteca de credenciales esté actualizada a la versión 1.2.1 o posterior.

GetPublicKeyCredentialException

No se pudo desencriptar la credencial

Este problema se produce cuando se intenta usar una llave de acceso después de salir de las Cuentas de Google y volver a acceder a ellas. Indícale al usuario que vuelva a acceder a su Cuenta de Google en su dispositivo.

NoCreateOptionException

Este comportamiento es el esperado cuando un usuario no tiene configuradas credenciales de llave de acceso en su dispositivo o si no tiene configurado un administrador de contraseñas.

NoCredentialException

No se encontraron credenciales coincidentes

Esta excepción se produce en las siguientes situaciones:

  • setFilterByAuthorizedAccounts se establece como verdadero sin cuentas autorizadas en el dispositivo.
  • No hay cuentas accedidas en el dispositivo (no se agregaron cuentas o se requiere una nueva autenticación).
  • La IU de la hoja inferior no aparece si las indicaciones de acceso están inhabilitadas para alguna cuenta del dispositivo. Este parámetro de configuración global, que se encuentra en Configuración de la Cuenta de Google > Acceder con Google, debe habilitarse para que se muestre la IU de la hoja inferior en cualquier cuenta. Esto no afecta el flujo del botón.

No se puede crear una llave de acceso porque los datos encriptados están bloqueados

El usuario debe restablecer los datos del servidor de Chrome. Estos datos incluyen los favoritos y la configuración de Chrome, además de las contraseñas y llaves de acceso guardadas. Para obtener más información sobre los datos que se almacenan en Chrome, consulta Datos de Chrome de tu cuenta.

  1. Ve a chrome.google.com/sync.
  2. En la parte inferior, selecciona Borrar datos.
  3. En el dispositivo, activa la sincronización en Chrome.

On Begin Sign In Failure: 8: Error interno desconocido.

Es posible que el dispositivo no esté configurado correctamente con la Cuenta de Google. Es posible que haya un problema con la forma en que se crea el JSON de la llave de acceso. Verifica la precisión de la implementación.

No se pudo obtener la cuenta de sincronización

Los Servicios de Google Play 24.40.XX y versiones posteriores proporcionarán códigos de error más informativos. Por ejemplo, en lugar de "No se pudo obtener la cuenta de sincronización", los llamadores ahora recibirán un mensaje de error de cancelación.