Aby wyszukiwać regiony i uzyskiwać więcej informacji o miejscach, możesz używać pakietu Places SDK na iOS oraz interfejsu Geocoding API z pakietem Maps SDK for iOS. Pakiet SDK Places na iOS i interfejs Geocoding API to wydajne i stabilne alternatywy do uzyskiwania identyfikatorów miejsc. Jeśli korzystasz już z identyfikatorów miejsc, możesz użyć ich ponownie w stylu opartym na danych na potrzeby granic.
Aby dodać Miejsca i Geokodowanie do pakietu SDK Maps na iOS:
- SDK na iOS zwraca informacje o miejscach korzystających z żądań HTTP.
- Klasa CLGeocoder może dynamicznie geokodować i odwracać geokodowanie na podstawie danych wejściowych użytkownika.
- Geocoding API umożliwia geokodowanie statycznych znanych adresów.
Korzystanie z interfejsu Places API
Wyszukiwanie tekstu interfejsu Places API zwraca informacje o zestawie miejsc na podstawie ciągu znaków, na przykład „pizza w Gdańsku”, „sklepy obuwnicze w pobliżu Ottawy” lub „ul. Główna 123”. Usługa przesyła listę miejsc pasujących do ciągu tekstowego i wszelkie ustawione uprzedzenia dotyczące lokalizacji.
Usługa autouzupełniania miejsc zapewnia użytkownikom wygodny sposób na wyszukiwanie według regionów. Aby wyświetlać wyniki w zdefiniowanym regionie, ustaw
locationRestriction
w ustawieniuGMSAutocompleteFilter
.
Pobieranie szczegółowych informacji o miejscu w regionie
Obowiązują też dane Szczegóły miejsca dotyczące regionu. Na przykład możesz:
- Wyszukuj identyfikatory miejsc przy granicach na podstawie nazw miejsc.
- Pobierz widoczny obszar, aby powiększyć do granicy granicy.
- Pobierz typ obiektu dla granicy (na przykład rejon).
- Uzyskaj sformatowany adres, który w regionie Stanów Zjednoczonych ma postać „Nazwa miejsca, Stan, Kraj” (np. „Kirkland, WA, USA”).
- Uzyskiwanie innych przydatnych danych, np. zdjęć.
Używanie interfejsu Geocoding API
Geocoding API pozwala przekonwertować adres oraz współrzędne szerokości i długości geograficznej lub umieścić identyfikator we współrzędnych geograficznych i odwrotnie. Poniższe zastosowania dobrze łączą się ze stylem opartym na danych w przypadku granic:
- Użyj geokodowania, by uzyskać widoczny obszar dla danego regionu.
- Zastosuj filtrowanie komponentów do wywołania Geokodowanie, aby uzyskać identyfikatory miejsc dla obszarów administracyjnych 1–4, miejscowości lub kodu pocztowego.
- Odwrotne geokodowanie pozwala znaleźć identyfikatory miejsc według współrzędnych szerokości i długości geograficznej. Możesz nawet wyświetlić identyfikatory miejsc dla wszystkich komponentów w konkretnej lokalizacji.
W poniższym przykładzie użyto adresu (ze zmianą znaczenia za pomocą adresu 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_KEY
Aby znaleźć identyfikatory miejsc, możesz użyć odwrotnego geokodowania. Ta przykładowa funkcja usługi Geocoding 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
Aby uzyskać w określonej lokalizacji komponent adresu na potrzeby co najmniej jednego z tych typów, użyj odwrotnego geokodowania z filtrowaniem komponentów:
administrativeArea
country
locality
postalCode
schoolDistrict
Poniższy przykład pokazuje użycie usługi Geocoding z dodawaniem ograniczeń komponentów z odwrotnym geokodowaniem w celu pobrania wszystkich komponentów 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