Sprawdzone metody dotyczące geokodowania

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Geokodowanie to proces przekształcania adresów (np. adresów) na współrzędne geograficzne (szerokość i długość geograficzną), których można użyć do umieszczenia znaczników na mapie lub określenia jej położenia. Celem tego dokumentu jest wyjaśnienie kwestii związanych z adresami geograficznymi. Wskazuje on, kiedy najlepiej jest korzystać z interfejsu Geocoding API i kiedy warto używać usługi autouzupełniania miejsc korzystających z interfejsu Places API.

Ogólnie interfejs Geocoding API służy do przetwarzania danych geograficznych z pełnym adresem (np. „48 Pirrama Rd, Pyrmont, NSW, Australia”). Korzystaj z usługi Places API API autouzupełniania, gdy adresy są niejednoznaczne (niepełne) lub używane w przypadku aplikacji, w przypadku których występuje duże ryzyko opóźnień, np. w odpowiedzi na dane wejściowe użytkowników.

Przypadki użycia i zalecenia dotyczące interfejsu API

Przypadki użycia i zalecenia dotyczące interfejsu API
Odpowiadanie na pytania użytkowników w czasie rzeczywistym (obejmuje to niejednoznaczny, niepełny, błędnie sformatowany lub błędnie wpisany adres wpisany przez użytkownika). Aby uzyskać identyfikator miejsca, użyj usługi Autouzupełnianie interfejsu Places API, a potem przekształć identyfikator miejsca w metakoder w postaci liter,
Automatyczne systemy przetwarzające pełne, niejednoznaczne adresy pocztowe (np. „48 Pirrama Rd, Pyrmont, NSW, Australia”) Użyj usługi internetowej Geocoding API.
Zautomatyzowane systemy przetwarzające niejednoznaczne zapytania (na przykład niekompletne, błędnie sformatowane lub błędnie zapisane adresy) Zalecane automatyczne systemy korzystają z usługi internetowej Geocoding API. Jednak automatyczne systemy z dużą liczbą niejednoznacznych, niepełnych lub błędnie wpisanych zapytań użytkowników mogą być przydatne dzięki dodaniu interaktywnego widżetu autouzupełniania związanego z miejscami, który umożliwia użytkownikom wybranie wyniku i unikanie błędu w adresie.
Problemy z czasem oczekiwania za pomocą interfejsu DIRECTION API lub interfejsu DISTANCE Matrix API; źródło, miejsca docelowe lub punkty trasy określone jako ciągi adresów Zmniejsz opóźnienia w geokodowaniu za pomocą usługi Autouzupełniaj miejsca, aby uzyskać identyfikatory miejsc. Następnie przenieś je do interfejsu Route API lub interfejsu DISTANCE Matrix API.

Odpowiadanie na opinie użytkowników

Aplikacje, które reagują w czasie rzeczywistym na działania użytkowników, mają 2 główne czynniki wpływające na wybór interfejsu API:

  1. Wpisanie danych przez użytkownika zwykle wymaga stopniowego wpisywanie adresu (np. „ul. Główna 123”), dlatego warto podać adresy w niepełnych i niejednoznacznych adresach. Dzięki temu szybciej uzyskasz wyniki.
  2. Reaguje na aplikacje użytkownika z dużym opóźnieniem.

Te 2 aspekty sprawiają, że usługa autouzupełniania miejsc w interfejsie Places API jest doskonałym rozwiązaniem na potrzeby odpowiadania na pytania użytkowników. Autouzupełnianie miejsc zostało zaprojektowane do zwracania wielu możliwych opcji i daje użytkownikom możliwość wyboru spośród tych opcji. Interfejs Places API można ograniczyć do wyszukiwania tylko danych geograficznych lub adresów, a jednocześnie wykluczyć firmy. Ponadto funkcja autouzupełniania wyszukiwania może odchylić wyniki w celu zwrócenia wyników określonych lokalizacji. Interfejs Places API zwraca identyfikator miejsca, który można przekazać w całości. Wskazuje on usługę internetową Geocoding API, która zwraca pełne dane adresowe, a następnie koduje adres w postaci liter. Identyfikatory miejsc można też przekazywać do innych interfejsów API, takich jak Route API czy DISTANCE Matrix API (patrz poniżej).

Geokodowanie adresów w interfejsie Geocoding API jest znacznie dłuższe i powoduje mniej dokładne wyniki w przypadku niepełnych lub niejednoznacznych zapytań, dlatego nie zalecamy korzystania z aplikacji, które muszą odpowiadać w czasie rzeczywistym na działania użytkowników.

Dowiedz się więcej o usłudze autouzupełniania miejsc w przypadku Androida, iOS, JavaScriptu i interfejsu API Miejsc.

Automatyczne systemy

Zautomatyzowane systemy przetwarzają kompletne, niejednoznaczne adresy pocztowe: takie zapytania jak np. pełne ciągi adresów pocztowych (np. „48 Pirrama Rd, Pyrmont, NSW, Australia”) są obsługiwane przez usługę internetową Geocoding API. Backend geokodowania adresów zapewnia większy zasięg adresów na całym świecie i jest zoptymalizowany pod kątem wysokiej jakości wyników za pomocą tego rodzaju pełnych i niejednoznacznych zapytań.

Automatyczne przetwarzanie niejednoznaczne zapytania: niejednoznaczne zapytania to takie, które zawierają źle sformatowane adresy, niepełne adresy lub błędy pisowni. W przypadku systemów automatycznych zalecamy korzystanie z usługi internetowej Geocoding API. Pamiętaj jednak, że interfejs Geocoding API nie jest w stanie obsłużyć niejednoznacznych zapytań i może spowodować, że wyniki będą niedokładne lub zerowe. Jeśli automatyczny system przetwarza dużą liczbę niejednoznacznych zapytań, które pochodzą z danych wejściowych użytkownika, możesz dodać do swojej aplikacji interaktywny element za pomocą usługi autouzupełniania miejsc w interfejsie Places API, ponieważ ma on zwrócić różne opcje i umożliwić użytkownikowi wybór między nimi. Interfejs Places API zwraca identyfikator miejsca, który można w całości przekazać jako lokalizację do usługi internetowej Geocoding API, która zwraca pełne dane adresowe i koduje adres na szerokość. Dowiedz się więcej o usłudze autouzupełniania miejsc w przypadku Androida, iOS, JavaScriptu i interfejsu API Miejsc.

Skrócenie czasu oczekiwania w przypadku interfejsów DIRECTION API i interfejsu DISTANCE Matrix API

Gdy punkty początkowe, miejsca docelowe lub punkty trasy są określone jako ciągi adresów, interfejsy API DIRECTIONs i Odległość muszą używać tego samego backendu co interfejs Geocoding API, aby przeanalizować te adresy przed obliczeniem trasy. Znacznie wydłuża to czas oczekiwania w porównaniu z określaniem tych samych lokalizacji co długość geograficzna lub identyfikatory miejsc.

Jeśli Twoja aplikacja używa interfejsu Route API lub interfejsu DISTANCE Matrix API w sytuacjach, które może powodować opóźnienia, np. w odpowiedzi na zapytania użytkowników, a Twoje punkty początkowe, miejsca docelowe i punkty trasy są początkowo określane jako ciągi adresów, zalecamy zminimalizowanie czasu oczekiwania przy użyciu funkcji autouzupełniania miejsc w ramach interfejsu Places API, co pozwoli przekonwertować ciągi adresów na identyfikatory miejsc, a następnie przekaże identyfikatory miejsc do interfejsu Route API lub interfejsu DISTANCE Matrix API. Dowiedz się więcej o usłudze autouzupełniania miejsc w aplikacjach na Androida, iOS, JavaScript i interfejsu Places API. Zobacz też przykład JavaScript autouzupełniania miejsc i wskazówek dojazdu.

Podsumowanie

W zależności od przypadku możesz użyć tych adresów, gdy korzystasz z interfejsu Geocoding API lub korzystasz z usługi autouzupełniania miejsc w połączeniu z interfejsem Geocoding API. Dzięki temu możesz tworzyć aplikacje, które oferują użytkownikom dokładne wyniki geokodowania i zmniejszają czas oczekiwania.

Zarządzanie błędami i ponawianiem próby

Jeśli otrzymujesz UNKNOWN_ERROR odpowiedzi, są one spowodowane błędami przejściowymi i najlepiej pozostają przy kolejnych próbach z krótkim opóźnieniem. Zalecamy korzystanie z bibliotek klienckich usług internetowych Google Maps Platform, które zawierają logikę ponawiania prób i obsługują uwierzytelnianie abonamentu Google Maps Platform Premium. Klient Java, Klient Pythona, Klient Go i Node.js dla usług Map Google to dostępne na GitHubie biblioteki użytkownika, które są dostępne do pobrania i wkładu w GitHubie, gdzie znajdziesz też instrukcje instalacji i przykładowy kod.

Jeśli w odpowiedzi otrzymasz kod stanu OVER_QUERY_LIMIT, przekroczysz limity wykorzystania interfejsu API. Zalecamy wypróbowanie tych strategii optymalizacji wykorzystania.