Rozwiązywanie problemów

Oto kilka wskazówek, jak rozwiązać typowe problemy.

Dlaczego promień dokładności jest bardzo duży?

Jeśli odpowiedź Geolocation zawiera bardzo wysoką wartość w polu dokładności, usługa może określać geolokalizację na podstawie adresu IP żądania, a nie punktów Wi-Fi czy stacji bazowych. Takie odpowiedzi mogą się pojawić, jeśli usługa nie rozpoznaje żadnych stacji bazowych ani punktów dostępu.

Aby potwierdzić, że usługa nie mogła określić geolokalizacji punktów dostępu, ustaw w żądaniu wartość considerIp na false. Jeśli odpowiedź to 404, oznacza to, że nie udało się określić geolokalizacji obiektów wifiAccessPoints i cellTowers.

Jak rozwiązać problem z błędem odpowiedzi?

Jeśli żądanie wygeneruje błąd, system zwróci treść odpowiedzi o błędzie w standardowym formacie i ustawi kod stanu HTTP na stan błędu.

Odpowiedź o błędzie zawiera obiekt z pojedynczym obiektem błędu z tymi kluczami:

  • code: jest taki sam jak stan HTTP odpowiedzi.
  • message: krótki opis błędu.
  • errors: lista błędów, które wystąpiły. Każdy błąd zawiera identyfikator typu błędu (przyczynę) i krótki opis (komunikat).

Na przykład wysłanie nieprawidłowego kodu JSON powoduje zwrócenie tego błędu:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "parseError",
    "message": "Parse Error",
   }
  ],
  "code": 400,
  "message": "Parse Error"
 }
}

Zbieranie informacji o testach z urządzeń

Aby przeprowadzić dodatkowe testy, możesz zebrać informacje z urządzenia, korzystając z wbudowanych usług lokalizacyjnych oferowanych przez każdą platformę:

Opisy błędów

Oto możliwe błędy, które możesz napotkać, wraz z opisami.

Przyczyna Domena Kod stanu HTTP Opis
dailyLimitExceeded usageLimits 403 Przekroczono limit dzienny.
keyInvalid usageLimits 400 Klucz interfejsu API jest nieprawidłowy w przypadku interfejsu Geolocation API. Pamiętaj, aby podać cały klucz i kupić interfejs API lub włączyć płatności i aktywować interfejs API, aby uzyskać bezpłatny limit.
userRateLimitExceeded usageLimits 403 Przekroczono limit żądań skonfigurowany w konsoli Google Cloud. Ten limit jest zwykle ustawiany jako liczba żądań dziennie, żądań na 100 sekund i żądań na 100 sekund na użytkownika. Limit należy skonfigurować tak, aby uniemożliwić pojedynczemu użytkownikowi lub małej grupie użytkowników wyczerpanie dziennego limitu, a jednocześnie zapewnić wszystkim użytkownikom rozsądny dostęp. Aby skonfigurować te limity, zapoznaj się z artykułem Ograniczanie wykorzystania interfejsu API.
notFound geolocation 404 Żądanie było prawidłowe, ale nie zwrócono żadnych wyników.
parseError global 400 Treść żądania nie jest prawidłowym kodem JSON. Szczegółowe informacje o każdym polu znajdziesz w sekcji Treść żądania.