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. Sprawdź, czy
ż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.
Pokaż informacje o zabezpieczeniach znajdujące się w artefaktie docelowym, dla którego wystąpił problem, za pomocą narzędzie
keytool
:Artefakt pakietu aplikacji na Androida
keytool -printcert -jarfile artifact.aab
Artefakt pliku APK
keytool -printcert -jarfile artifact.apk
Sprawdź, czy odcisk cyfrowy certyfikatu SHA-1 jest zgodny z danymi uwierzytelniającymi używanymi w klienta OAuth 2.0 projektu Identyfikator.
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 sekcją Autoryzacja bez klucza nie praca i wykonaj odpowiednie czynności, aby sprawdzić, czy odcisk cyfrowy klucza podpisywania dla danego artefaktu jest prawidłowy. zgadza się z odciskiem cyfrowym podanym w Google Cloud.
Autoryzacja bez klucza nie działa, gdy używasz 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.
- Tworzenie nowego klienta OAuth 2.0 ID za pomocą Odcisk cyfrowy 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 interfejsu 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 kluczy 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.