Możesz używać pakietu Places SDK na iOS i interfejsu Geocoding API z pakietem Maps SDK na iOS, aby wyszukiwać regiony i uzyskiwać więcej informacji o miejscach. Pakiet SDK Miejsc na iOS i Geocoding API to skuteczne i stabilne alternatywy do uzyskiwania identyfikatorów miejsc. Jeśli używasz już identyfikatorów miejsc, możesz ich używać ze stylami opartymi na danych w przypadku granic.
Miejsca i kodowanie geograficzne możesz dodawać do aplikacji korzystających z Maps SDK na iOS na te sposoby:
- Pakiet SDK Miejsc na iOS zwraca informacje o miejscach za pomocą żądań HTTP.
- Klasa CLGeocoder może dynamicznie geokodować i odwrotnie geokodować dane wejściowe użytkownika.
- Geocoding API umożliwia geokodowanie statycznych, znanych adresów.
Korzystanie z Places API
Wyszukiwanie tekstowe w Places API zwraca informacje o zbiorze miejsc na podstawie ciągu znaków, np. „pizza w Nowym Jorku”, „sklepy obuwnicze w pobliżu Warszawy” lub „ul. Główna 123”. Usługa zwraca listę miejsc pasujących do ciągu tekstowego i ustawionych preferencji lokalizacji.
Usługa autouzupełniania miejsc umożliwia użytkownikom wygodne wyszukiwanie regionów. Aby wyświetlać wyniki w określonym regionie, ustaw
locationRestrictionnaGMSAutocompleteFilter.
Uzyskiwanie informacji o miejscu w regionie
Przydatne są też dane informacji o miejscu dotyczące regionu. Możesz na przykład:
- Wyszukaj identyfikatory miejsc granicznych na podstawie nazw miejsc.
- Pobierz widoczny obszar, aby powiększyć do granicy.
- pobrać typ obiektu dla granicy (np. miejscowość);
- Pobierz sformatowany adres, który w regionie Stanów Zjednoczonych jest rozpoznawany jako „Nazwa miejsca, stan, kraj” (np. „Kirkland, WA, USA”).
- uzyskiwać inne przydatne dane, takie jak zdjęcia.
Korzystanie z interfejsu Geocoding API
Geocoding API umożliwia konwertowanie adresu, współrzędnych szerokości i długości geograficznej lub identyfikatora miejsca na współrzędne geograficzne i odwrotnie. W przypadku stylów opartych na danych dotyczących granic dobrze sprawdzają się te zastosowania:
- Użyj geokodowania, aby uzyskać widoczny obszar dla regionu.
- Zastosuj filtrowanie komponentów do wywołania geokodowania, aby uzyskać identyfikatory miejsc dla regionów administracyjnych 1–4, miejscowości lub kodu pocztowego.
- Użyj odwrotnego geokodowania, aby znaleźć identyfikatory miejsc według współrzędnych szerokości i długości geograficznej, a nawet zwrócić identyfikatory miejsc dla wszystkich komponentów w określonej lokalizacji.
W poniższym przykładzie użyto adresu (z kodowaniem URL) do wysłania żądania do interfejsu Geocoding API:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEYIdentyfikatory miejsc możesz znaleźć za pomocą odwrotnego geokodowania. Poniższy przykład funkcji usługi geokodowania zwraca identyfikatory miejsc dla wszystkich komponentów adresu o określonych współrzędnych szerokości i długości geograficznej:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY
Użyj odwrotnego geokodowania z filtrowaniem komponentów, aby uzyskać komponent adresu dla co najmniej 1 z tych typów w określonej lokalizacji:
administrativeAreacountrylocalitypostalCodeschoolDistrict
Poniższy przykład pokazuje, jak za pomocą usługi geokodowania dodać ograniczenia komponentów z odwrotnym geokodowaniem, aby pobrać wszystkie komponenty adresu w określonej lokalizacji dla typu
locality:https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY