Rozwiązywanie problemów z autoryzacją interfejsu ARCore API

Wybierz platformę:

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:

  1. 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.
  2. 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
  3. Sprawdź, czy odcisk cyfrowy certyfikatu SHA-1 jest zgodny z danymi uwierzytelniającymi używanymi w klienta OAuth 2.0 projektu Identyfikator.

  4. 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:

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.