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 interfejs Geocoding API to wydajne i stabilne alternatywy do uzyskiwania identyfikatorów miejsc. Jeśli używasz już identyfikatorów miejsc, możesz ich ponownie użyć w stylach opartych na danych w przypadku granic.
Dodaj Miejsca i Geokodowanie do aplikacji korzystających z Maps SDK na iOS w jeden z tych sposobów:
- Pakiet SDK Miejsc na iOS zwraca informacje o miejscach przy użyciu żą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 interfejsu Places API
Places API Text Search zwraca informacje o zbiorze miejsc na podstawie ciągu znaków, np. „pizza w Nowym Jorku”, „sklepy obuwnicze w pobliżu Ottawy” lub „123 Main Street”. Usługa odpowiada listą miejsc pasujących do ciągu tekstowego i wszelkich ustawionych preferencji lokalizacyjnych.
Usługa autouzupełniania miejsc to wygodny sposób na umożliwienie użytkownikom wyszukiwania regionów. Aby wyświetlać wyniki w określonym regionie, ustaw wartość
locationRestriction
naGMSAutocompleteFilter
.
Pobieranie szczegółów miejsca w regionie
Dane szczegółów miejsca w regionie również są skuteczne. Możesz na przykład:
- Wyszukiwanie identyfikatorów miejsc granicznych na podstawie nazw miejsc.
- Pobierz widoczny obszar, aby powiększyć go do granicy.
- Pobierz typ obiektu dla granicy (np. miejscowość).
- Uzyskaj sformatowany adres, który w Stanach Zjednoczonych będzie miał postać „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 geograficznych lub identyfikatora miejsca na współrzędne geograficzne i odwrotnie. Te zastosowania dobrze sprawdzają się w połączeniu ze stylizacją granic opartą na danych:
- Użyj geokodowania, aby uzyskać widoczny obszar regionu.
- Zastosuj filtrowanie komponentów w wywołaniu Geocoding API, aby uzyskać identyfikatory miejsc dla obszarów administracyjnych 1–4, miejscowości lub kodu pocztowego.
- Użyj odwrotnego geokodowania, aby znaleźć identyfikatory miejsc na podstawie współrzędnych geograficznych, a nawet zwrócić identyfikatory miejsc dla wszystkich komponentów w określonej lokalizacji.
W tym przykładzie użyto adresu (z kodowaniem URL) do wysłania żądania do Geocoding API:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY
Aby znaleźć identyfikatory miejsc, możesz użyć geokodowania odwrotnego. Poniższa przykładowa funkcja usługi geokodowania zwraca identyfikatory miejsc dla wszystkich komponentów adresu o określonych współrzędnych geograficznych:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY
Użyj geokodowania zwrotnego z filtrowaniem komponentów, aby uzyskać komponent adresu dla co najmniej jednego z tych typów w określonej lokalizacji:
administrativeArea
country
locality
postalCode
schoolDistrict
Poniższy przykład pokazuje, jak używać usługi geokodowania, dodając ograniczenia komponentów za pomocą geokodowania odwrotnego, 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