Bezkluczykowy dostęp nie działa (ERROR_NOT_AUTHORIZED)
Jeśli komunikacja z serwerem interfejsu ARCore API zwraca błąd ERROR_NOT_AUTHORIZED, sprawdź, czy aplikacja zawiera bibliotekę com.google.android.gms:play-services-auth:
- Skompiluj aplikację i sprawdź wynikowy artefakt za pomocą analizatora APK. Upewnij się, że skompilowany plik binarny aplikacji zawiera pakiet
com.google.android.gms.auth, a jego zawartość nie została zmieniona ani zminimalizowana.- Jeśli nie ma, postępuj zgodnie z instrukcjami w sekcji Dołączanie wymaganych bibliotek i upewnij się, że biblioteka jest dołączona, a ustawienia minimalizacji są prawidłowe.
Wyświetl informacje o bezpieczeństwie w artefakcie docelowym, w którym wystąpił błąd, za pomocą narzędzia
keytool:Artefakt AAB
keytool -printcert -jarfile artifact.aab
Artefakt APK
keytool -printcert -jarfile artifact.apk
Sprawdź, czy odcisk cyfrowy certyfikatu SHA-1 pasuje do danych logowania używanych w identyfikatorze klienta OAuth 2.0 w projekcie.
Sprawdź, czy interfejs ARCore API jest włączony w odpowiednim projekcie w Google Cloud.
Autoryzacja bez klucza działa w niektórych typach kompilacji (np.Debug), ale nie w innych.
Jeśli autoryzacja bez klucza działa w przypadku niektórych kompilacji, ale nie w przypadku innych, sprawdź, czy odcisk palca w nieudanym artefakcie jest zgodny z odciskiem palca wymienionym w konsoli Google Cloud. Zapoznaj się z sekcją Autoryzacja bez klucza nie działa i wykonaj czynności, aby sprawdzić, czy odcisk cyfrowy klucza podpisywania tego artefaktu jest zgodny z odciskiem cyfrowym podanym w Google Cloud.
Autoryzacja bez klucza nie działa w przypadku korzystania z podpisywania aplikacji przez Google Play
Jeśli autoryzacja bez klucza działa w przypadku kompilacji lokalnych, ale nie po przesłaniu do Sklepu Google Play, gdy włączone jest podpisywanie aplikacji przez Google Play, upewnij się, że odcisk cyfrowy certyfikatu SHA-1 zarejestrowany w danych logowania projektu jest zgodny z odciskiem cyfrowym, którego Google używa do podpisywania aplikacji:
- Na stronie podpisywania aplikacji w Google Play przewiń do sekcji Certyfikat klucza podpisywania aplikacji. Zanotuj odcisk cyfrowy certyfikatu SHA-1.
- Utwórz nowy identyfikator klienta OAuth 2.0, używając odcisku cyfrowego certyfikatu SHA-1 z poprzedniego kroku.
Więcej informacji znajdziesz w artykule Podpisywanie aplikacji w Google Play.
Uwierzytelnianie za pomocą klucza interfejsu API nie działa
Jeśli autoryzacja za pomocą klucza API nie działa, wykonaj te czynności:
- Sprawdź, czy interfejs ARCore API jest włączony w odpowiednim projekcie w Google Cloud.
- Jeśli masz włączone jakiekolwiek ograniczenia dotyczące klucza interfejsu API, tymczasowo je wyłącz.
- Sprawdź, czy klucz interfejsu API wymieniony w sekcji Dane logowania Twojego projektu jest dokładnie taki sam jak klucz interfejsu API używany przez aplikację i nie zawiera spacji ani innych znaków.