Résoudre les problèmes d'autorisation de l'API ARCore

Sélectionnez une plate-forme:

La commande sans clé ne fonctionne pas (ERROR_NOT_AUTHORIZED)

Lorsque la communication avec le serveur d'API ARCore génère une erreur ERROR_NOT_AUTHORIZED, assurez-vous que votre application contient la bibliothèque com.google.android.gms:play-services-auth:

  1. Compilez votre application et vérifiez l'artefact obtenu avec l'analyseur d'APK. Assurez-vous que le binaire de l'application compilée inclut le package com.google.android.gms.auth et que son contenu n'est pas renommé ni minimisé.
    • Si elle n'est pas présente, suivez les instructions de la section Inclure les bibliothèques requises, et assurez-vous que la bibliothèque est incluse et que les paramètres de minimisation sont corrects.
  2. Affichez les informations de sécurité présentes dans l'artefact cible défaillant à l'aide de l'utilitaire keytool:

    Artefact AAB

    keytool -printcert -jarfile artifact.aab

    Artefact APK

    keytool -printcert -jarfile artifact.apk
  3. Assurez-vous que l'empreinte du certificat SHA-1 correspond aux identifiants utilisés dans l'ID client OAuth 2.0 de votre projet.

  4. Assurez-vous d'avoir activé l'API ARCore pour le bon projet dans Google Cloud.

L'autorisation sans clé réussit dans certains types de compilation (par exemple, débogage), mais pas dans d'autres

Si l'autorisation sans clé réussit dans certaines versions, mais pas dans d'autres, assurez-vous que l'empreinte présente dans l'artefact défaillant correspond à l'empreinte listée dans la console Google Cloud. Consultez la section L'autorisation sans clé ne fonctionne pas et suivez la procédure pour vérifier que l'empreinte de la clé de signature de cet artefact correspond à l'empreinte listée dans Google Cloud.

L'autorisation sans clé ne fonctionne pas lorsque vous utilisez la signature d'application Play

Si l'autorisation sans clé fonctionne sur vos builds locaux, mais pas après l'importation sur le Google Play Store lorsque la signature d'application Play est activée, assurez-vous que l'empreinte du certificat SHA-1 enregistrée dans les identifiants de votre projet correspond à l'empreinte que Google utilise pour signer votre application:

  • Sur la page Signature d'application de Google Play, faites défiler la page jusqu'à Certificat de la clé de signature d'application. Notez l'empreinte du certificat SHA-1.
  • Créez un ID client OAuth 2.0 à l'aide de l'empreinte du certificat SHA-1 de l'étape précédente.

Pour en savoir plus, consultez Signature d'application Play.

L'authentification par clé API ne fonctionne pas

Si l'autorisation par clé API ne fonctionne pas, procédez comme suit:

  • Assurez-vous d'avoir activé l'API ARCore pour le bon projet dans Google Cloud.
  • Si des restrictions de clés API sont activées, désactivez-les temporairement.
  • Vérifiez que la clé API indiquée dans les identifiants de votre projet correspond exactement à celle utilisée par votre application, sans espaces ni autres caractères.