Oto kilka wskazówek dotyczących rozwiązywania typowych problemów.
Dlaczego promień dokładności jest bardzo duży?
Jeśli w odpowiedzi interfejsu Geolocation w polu dokładności występuje bardzo wysoka wartość, usługa może określać lokalizację na podstawie adresu IP żądania, a nie punktów Wi-Fi ani stacji bazowych. Takie odpowiedzi mogą się pojawiać, jeśli usługa nie rozpoznaje żadnych stacji bazowych ani punktów dostępu.
Aby potwierdzić, że usługa nie mogła określić lokalizacji punktów dostępu, ustaw w żądaniu wartość considerIp
na false. Jeśli odpowiedź to 404, oznacza to, że nie udało się zlokalizować obiektów wifiAccessPoints i cellTowers.
Jak rozwiązać problem z błędem odpowiedzi?
Jeśli żądanie wygeneruje błąd, system zwróci treść odpowiedzi w standardowym formacie błędu i ustawi kod stanu HTTP na stan błędu.
Odpowiedź o błędzie zawiera obiekt z jednym obiektem błędu z tymi kluczami:
code
: jest to ten sam kod stanu 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 pliku JSON spowoduje wyświetlenie 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 zbierać informacje z urządzenia za pomocą tych pakietów SDK i interfejsów API:
Urządzenia z Androidem: otwórz pakiet SDK Miejsc na Androida i interfejsy API lokalizacji na Androida.
Urządzenia z iOS: otwórz pakiet SDK Miejsc na iOS.
Opisy błędów
Poniżej znajdziesz opisy możliwych błędów.
Przyczyna | Domena | Kod stanu HTTP | Opis |
---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | Przekroczono dzienny limit. |
keyInvalid |
usageLimits |
400 | Klucz interfejsu API jest nieprawidłowy w przypadku interfejsu Geolocation API. Pamiętaj, aby podać cały klucz. Musisz też kupić interfejs API lub włączyć rozliczenia i aktywować interfejs API, aby uzyskać limit bez opłat. |
userRateLimitExceeded |
usageLimits |
403 | Przekroczono limit żądań skonfigurowany w konsoli Google Cloud. Ten limit jest zwykle określany jako liczba żądań dziennie, liczba żądań na 100 sekund i liczba żądań na 100 sekund na użytkownika. Skonfiguruj limit, aby uniemożliwić jednemu 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óciło żadnych wyników. |
parseError |
global |
400 | Treść żądania nie jest prawidłowym formatem JSON. Szczegółowe informacje o poszczególnych polach znajdziesz w sekcji Treść żądania. |