Schlüsselloser Zugang funktioniert nicht (ERROR_NOT_AUTHORIZED)
Wenn bei der Kommunikation mit dem ARCore API-Server ERROR_NOT_AUTHORIZED ausgegeben wird, muss Ihre Anwendung die com.google.android.gms:play-services-auth-Bibliothek enthalten:
- Erstellen Sie Ihre App und prüfen Sie das resultierende Artefakt mit dem APK Analyzer. Achten Sie darauf, dass das erstellte Anwendungs-Binärprogramm das Paket
com.google.android.gms.authenthält und dass dessen Inhalt nicht umbenannt oder minimiert wird.- Wenn sie nicht vorhanden ist, folgen Sie der Anleitung unter Erforderliche Bibliotheken einbinden und achten Sie darauf, dass die Bibliothek eingebunden ist und die Einstellungen für die Minimierung korrekt sind.
Rufen Sie die Sicherheitsinformationen des fehlerhaften Zielartefakts mit dem
keytool-Dienstprogramm auf:AAB-Artefakt
keytool -printcert -jarfile artifact.aab
APK-Artefakt
keytool -printcert -jarfile artifact.apk
Achten Sie darauf, dass der SHA-1-Zertifikat-Fingerabdruck mit den Anmeldedaten übereinstimmt, die in der OAuth 2.0-Client-ID Ihres Projekts verwendet werden.
Achten Sie darauf, dass Sie die ARCore API für das richtige Projekt in Google Cloud aktiviert haben.
Die schlüssellose Autorisierung ist bei einigen Build-Typen (z. B. Debug) erfolgreich, bei anderen jedoch nicht.
Wenn die schlüssellose Autorisierung in bestimmten Builds, aber nicht in anderen funktioniert, prüfen Sie, ob der Fingerabdruck im fehlerhaften Artefakt mit dem Fingerabdruck in der Google Cloud Console übereinstimmt. Sehen Sie sich Schlüssellose Autorisierung funktioniert nicht an und folgen Sie der Anleitung, um zu prüfen, ob der Fingerabdruck des Signaturschlüssels für dieses Artefakt mit dem in Google Cloud aufgeführten Fingerabdruck übereinstimmt.
Schlüssellose Autorisierung funktioniert nicht bei Verwendung der Play App-Signatur
Wenn die schlüssellose Autorisierung in Ihren lokalen Builds funktioniert, aber nicht nach dem Hochladen in den Play Store, wenn die Play App-Signatur aktiviert ist, prüfen Sie, ob der SHA-1-Zertifikat-Fingerabdruck, der in den Anmeldedaten Ihres Projekts registriert ist, mit dem Fingerabdruck übereinstimmt, den Google zum Signieren Ihrer App verwendet:
- Scrollen Sie auf der Seite „App-Signatur“ in Google Play zu Zertifikat für App-Signaturschlüssel. Notieren Sie sich den SHA-1-Zertifikat-Fingerabdruck.
- Erstellen Sie eine neue OAuth 2.0-Client-ID mit dem SHA-1-Zertifikatsfingerabdruck aus dem vorherigen Schritt.
Weitere Informationen finden Sie unter Play App Signing.
Authentifizierung von API-Schlüsseln funktioniert nicht
Wenn die Autorisierung mit API-Schlüssel nicht funktioniert, gehen Sie so vor:
- Achten Sie darauf, dass Sie die ARCore API für das richtige Projekt in Google Cloud aktiviert haben.
- Wenn Sie Einschränkungen für API-Schlüssel aktiviert haben, deaktivieren Sie diese vorübergehend.
- Achten Sie darauf, dass der in den Anmeldedaten Ihres Projekts aufgeführte API-Schlüssel genau mit dem von Ihrer App verwendeten API-Schlüssel übereinstimmt und keine Leerzeichen oder andere Zeichen enthält.