Résoudre les erreurs courantes du Gestionnaire d'identifiants

Ce guide liste les codes et descriptions d'erreur courants liés au Gestionnaire d'identifiants et fournit des informations sur leurs causes.

Code d'erreur et description Cause

android.os.TransactionTooLargeException

Cela est dû à un problème connu où l'API credentialManager.getCredential() sur Android 14 et versions ultérieures ne parvient pas à afficher la boîte de dialogue de connexion lorsque plusieurs comptes Google sont présents sur l'appareil. Ce problème se produit spécifiquement avec GetGoogleIdOption et non avec GetSignInWithGoogleOption. Ce problème est résolu dans la version 24.40.XX des services Google Play et les versions ultérieures.

CreateCredentialCancellationException

L'utilisateur a annulé l'enregistrement ou la récupération de la clé d'accès.

L'utilisateur a choisi de ne pas créer ni utiliser d'identifiant. Vous pouvez maintenant ajuster votre UI pour proposer une autre méthode de connexion ou passer aux étapes suivantes de votre processus.

GetCredentialCancellationException

Le processus de récupération des identifiants a été arrêté, car l'autorisation utilisateur nécessaire n'a pas été obtenue. Bien que cela se produise le plus souvent lorsqu'un utilisateur annule manuellement le flux de connexion, cela peut également indiquer que la requête n'a pas été autorisée en raison de contraintes techniques. Étant donné que cette erreur indique un manque de consentement, ne relancez pas automatiquement la requête, car cela perturbe l'expérience utilisateur. Toutefois, les développeurs doivent surveiller la fréquence de cette exception. Un volume élevé d'annulations peut en réalité indiquer une erreur de configuration (par exemple, un champ d'application manquant ou incorrect) qui empêche l'interface utilisateur d'autorisation de se terminer correctement. Si vous remarquez des tendances inattendues, examinez les paramètres de votre demande et la configuration de la [partie de confiance][2].

Remarque : Le message d'erreur peut varier en fonction du type d'identifiant :

  • Pour les clés d'accès, le message d'erreur peut être "L'utilisateur a annulé l'enregistrement ou la récupération de la clé d'accès".
  • Pour "Se connecter avec Google", le message d'erreur peut être "L'activité a été annulée par l'utilisateur".

CreateCredentialCustomException ou GetCredentialCustomException

Lorsque vous utilisez un SDK tiers pour effectuer des appels d'API avec un objet de requête qui sous-classe CreateCustomCredentialRequest ou GetCustomCredentialOption, des erreurs peuvent se produire. Si cela se produit, vérifiez dans le SDK les constantes de type d'exception personnalisées qui correspondent à e.type. Si aucune correspondance n'est trouvée, vous pouvez supprimer ou consigner l'exception sans risque.

CreateCredentialInterruptedException ou GetCredentialInterruptedException

L'opération a peut-être été interrompue parce que l'utilisateur a accédé aux paramètres pour reconfigurer les gestionnaires de mots de passe. D'autres raisons peuvent également avoir contribué à l'interruption. Veuillez réessayer d'appeler.

CreateCredentialUnknownException

Lors de l'enregistrement du mot de passe, One Tap 16 indique qu'aucun mot de passe n'a été trouvé : [28431] L'enregistrement du mot de passe est ignoré, car l'utilisateur est probablement invité à utiliser la saisie automatique Android.

Cette erreur n'affecte qu'Android 13 et les versions antérieures lorsque Google est le fournisseur de saisie automatique désigné. Dans ce cas, les utilisateurs recevront une invite d'enregistrement de la saisie automatique, et le mot de passe sera stocké dans le Gestionnaire de mots de passe de Google. Il est important de noter que les identifiants enregistrés à l'aide de la saisie automatique avec Google sont synchronisés de manière bidirectionnelle avec l'API Credential Manager. Cette erreur peut donc être ignorée.

CreatePublicKeyCredentialDomException & GetPublicKeyCredentialDomException

Il est probable que l'exception DOM contienne un domError plus spécifique. Vous pouvez le mapper à un DomException WebAuthn pour en savoir plus.

CreatePublicKeyCredentialDomException & GetPublicKeyCredentialDomException

La requête entrante ne peut pas être validée.

Le serveur du gestionnaire de mots de passe ne reconnaît pas l'ID de package de l'application. Cela indique un problème potentiel avec votre intégration côté serveur, en particulier avec la configuration des liens vers les ressources numériques. Vérifiez l'exactitude de l'ID et du SHA du package dans votre fichier de liens vers les éléments.

CreatePublicKeyCredentialDomException :

Impossible de créer une clé lors de l'enregistrement

Ce problème peut survenir lorsqu'un utilisateur ferme la boîte de dialogue de verrouillage de l'écran lors de l'enregistrement.

CreateCredentialNoCreateOptionException

Cette exception spécifique indique que l'utilisateur n'a pas configuré de gestionnaire de mots de passe valide. Cette erreur n'est pas liée à un flux d'annulation manuelle initié par l'utilisateur, mais à un échec distinct.

CreatePublicKeyDomException & GetPublicKeyCredentialDomException

L'enregistrement de la clé d'accès a été annulé par l'utilisateur.

La récupération de la clé d'accès a été annulée par l'utilisateur.

Ce problème peut survenir lorsqu'un utilisateur ferme la boîte de dialogue d'empreinte digitale lors de l'enregistrement ou de la récupération d'une clé d'accès.

GetCredentialProviderConfigurationException et CreateCredentialProviderConfigurationException

Aucune dépendance de fournisseur trouvée pour getCredentialAsync

Aucune dépendance de fournisseur trouvée pour createCredentialAsync

La dépendance androidx.credentials:credentials-play-services-auth:<latest-version> est manquante.

GetCredentialUnsupportedException ou CreateCredentialUnsupportedException

Votre appareil n'est pas compatible avec le gestionnaire d'identifiants

Assurez-vous que votre bibliothèque d'identifiants est mise à jour (version 1.2.1 ou ultérieure).

GetPublicKeyCredentialException

Échec du déchiffrement des identifiants

Ce problème se produit lorsque vous essayez d'utiliser une clé d'accès après vous être déconnecté de votre compte Google, puis reconnecté. Demandez à l'utilisateur de se reconnecter à son compte Google sur son appareil.

NoCreateOptionException

Cette exception est un comportement normal lorsqu'un utilisateur n'a configuré aucune clé d'accès sur son appareil ou s'il n'a pas configuré de gestionnaire de mots de passe.

NoCredentialException

Aucun identifiant correspondant trouvé

Cette exception se produit dans les situations suivantes :

  • setFilterByAuthorizedAccounts est défini sur "true" sans compte autorisé sur l'appareil.
  • Aucun compte n'est connecté à l'appareil (aucun compte n'a été ajouté ou les comptes doivent être réauthentifiés).
  • L'UI BottomSheet ne s'affiche pas si les invites de connexion sont désactivées pour un compte sur l'appareil. Ce paramètre global, disponible sous Paramètres du compte Google > Se connecter avec Google, doit être activé pour que l'UI BottomSheet s'affiche pour n'importe quel compte. Cela n'a aucune incidence sur le flux des boutons.

Impossible de créer une clé d'accès, car les données chiffrées sont verrouillées

L'utilisateur doit réinitialiser ses données Chrome côté serveur. Ces données incluent vos favoris et paramètres Chrome, en plus de vos mots de passe et clés d'accès enregistrés. Pour en savoir plus sur les données stockées par Chrome, consultez Données Chrome de votre compte.

  1. Accédez à chrome.google.com/sync.
  2. En bas de l'écran, sélectionnez Effacer les données.
  3. Sur l'appareil, activez la synchronisation dans Chrome.

On Begin Sign In Failure: 8 : erreur interne inconnue.

Il est possible que l'appareil ne soit pas configuré correctement avec le compte Google. Il se peut qu'il y ait un problème avec la façon dont le JSON de la clé d'accès est créé. Vérifiez que l'implémentation est correcte.

Impossible d'obtenir le compte de synchronisation

Les services Google Play version 24.40.XX et ultérieures fourniront des codes d'erreur plus informatifs. Par exemple, au lieu du message "Impossible d'obtenir le compte de synchronisation", les appelants recevront désormais un message d'erreur d'annulation.