Bezkluczykowy nie działa (ERROR_NOT_AUTHORIZED
)
Gdy komunikacja z serwerem interfejsu ARCore API wywołuje ERROR_NOT_AUTHORIZED
, sprawdź, czy Twoja aplikacja zawiera
Biblioteka com.google.android.gms:play-services-auth
:
- Skompiluj aplikację i sprawdź powstały artefakt w pliku APK
Analizatora. Ensure
że plik binarny skompilowanej aplikacji zawiera interfejs
com.google.android.gms.auth
pakietu oraz upewnić się, że jego zawartość nie została zmieniona ani nie jest zmniejszona.- Jeśli go nie ma, postępuj zgodnie z instrukcjami w sekcji Wymagane uwzględnienie. biblioteki i upewnij się, że biblioteka jest uwzględniona, a ustawienia minifikacji są poprawne.
Wyświetl informacje o zabezpieczeniach w artefakcie docelowym, który nie spełnia wymagań, za pomocą narzędzia
keytool
:Artefakt pakietu aplikacji na Androida
keytool -printcert -jarfile artifact.aab
Artefakt pliku APK
keytool -printcert -jarfile artifact.apk
Upewnij się, że odcisk cyfrowy certyfikatu SHA-1 pasuje do danych logowania użytych w identyfikatorze klienta OAuth 2.0 Twojego projektu.
Sprawdź, czy interfejs ARCore API jest włączony. dla odpowiedniego projektu w Google Cloud.
Autoryzacja bez klucza sprawdza się w niektórych typach kompilacji (np. Debugowanie), a w innych – nie
Jeśli w niektórych kompilacjach autoryzacja bez klucza kończy się powodzeniem, a w innych nie działa, upewnij się, że odcisk cyfrowy znajdujący się w błędnym artefaktie jest zgodny z odciskiem cyfrowym dostępne w konsoli Google Cloud. Zapoznaj się z artykułem Autoryzacja bez klucza nie działa i wykonaj czynności, aby sprawdzić, czy odcisk cyfrowy klucza podpisującego dany element zgadza się z odciskiem wymienionym w Google Cloud.
Autoryzacja bez klucza nie działa podczas korzystania z podpisywania aplikacji przez Google Play
Jeśli autoryzacja bez klucza działa w lokalnych kompilacji, ale nie po przesłaniu do Sklepu Google Play, gdy włączone jest podpisywanie aplikacji przez Google Play, sprawdź, czy SHA-1 odcisk cyfrowy certyfikatu zarejestrowany w danych logowania do projektu pasuje do odcisk cyfrowy używany przez Google do podpisywania aplikacji:
- na stronie podpisywania aplikacji. w Google Play przewiń do sekcji Certyfikat klucza podpisywania aplikacji. Zwróć uwagę na funkcję SHA-1 odcisk cyfrowy certyfikatu.
- Utwórz nowy identyfikator klienta OAuth 2.0, korzystając z odcisku palca certyfikatu SHA-1 z poprzedniego kroku.
Więcej informacji znajdziesz w artykule Aplikacja Google Play. Podpisywanie.
Uwierzytelnianie klucza interfejsu API nie działa
Jeśli autoryzacja klucza API nie działa, wykonaj te czynności:
- Sprawdź, czy interfejs ARCore API jest włączony. dla odpowiedniego projektu w Google Cloud.
- Jeśli masz włączone ograniczenia dotyczące klucza interfejsu API, tymczasowo je wyłącz.
- Upewnij się, że klucz interfejsu API wymieniony w pliku dane logowania. pasuje do klucza interfejsu API używanego przez Twoją aplikację (bez spacji ani innych elementów) znaków.