Как использовать Places API и геокодирование с настройкой стилей на основе данных для границ

Выберите платформу: Android iOS JavaScript

Разработчики из Европейской экономической зоны (ЕЭЗ)

Чтобы находить регионы и получать дополнительную информацию о местах, вы можете использовать Maps SDK для iOS вместе с Places SDK для iOS или Geocoding API. Places SDK для iOS и Geocoding API – это мощные и надежные альтернативные решения для получения идентификаторов мест. Если вы уже работаете с такими идентификаторами, то сможете легко использовать их вместе со стилями на основе данных, чтобы показывать границы.

Возможны следующие варианты использования Places и Geocoding в приложениях с Maps SDK для iOS:

  • Возврат информации о местах по HTTP-запросам с помощью Places SDK для iOS.
  • Класс CLGeocoder может выполнять прямое и обратное геокодирование динамически на основе ввода данных пользователем.
  • Геокодирование известных статических адресов с помощью Geocoding API.

Places API

  • Текстовый поиск Places API возвращает информацию о местах на основе введенной фразы, например "кафе в Москве", "обувные магазины в Санкт-Петербурге" или "улица Центральная, 123". Ответ содержит список мест, соответствующих текстовой строке с учетом указанного предпочтительного местоположения.

  • С сервисом Places Autocomplete вашим пользователям будет удобно искать регионы на карте. Чтобы показывать результаты в пределах определенного региона, задайте для параметра locationRestriction значение GMSAutocompleteFilter.

Как получить информацию о регионе

  • Также можно запрашивать информацию о местах для региона. Например, вы можете:

    • идентификаторы граничащих с регионом мест по его названию;
    • область просмотра для увеличения масштаба до границ региона;
    • объекты определенного типа внутри границ (например, населенные пункты);
    • форматированный адрес региона США в формате "населенный пункт, штат, страна" (например, "Керкленд, штат Вашингтон, США");
    • фотографии и многое другое.

Geocoding API

  • С помощью Geocoding API вы можете преобразовывать адреса, координаты широты и долготы или идентификаторы мест в географические координаты и наоборот. Он поддерживает разные варианты использования, которые хорошо сочетаются со стилями на основе данных для границ. Например, вы можете:

    • Получать область просмотра для региона.
    • Применяйте фильтрацию по компонентам в вызовах Geocoding, чтобы получать идентификаторы мест для административных районов уровней 1–4, населенных пунктов или почтовых индексов.
    • Получать идентификаторы мест по географическим координатам, а также для всех компонентов в том или ином местоположении – это делается с помощью обратного геокодирования.

    В следующем примере для отправки запроса к Geocoding API используется адрес (с экранированием URL):

    https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY

    Идентификаторы мест можно получать с помощью обратного геокодирования. В примере ниже функция сервиса Geocoding возвращает идентификаторы места для всех компонентов адреса в точке с заданными координатами.

    https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY

    Обратное геокодирование можно использовать с фильтром компонентов адреса, чтобы получать только нужные вам компоненты:

    • administrativeArea
    • country
    • locality
    • postalCode
    • schoolDistrict

    В примере ниже показано, как добавить ограничение при использовании функции обратного геокодирования в сервисе Geocoding, чтобы получить для заданной точки только адресный компонент locality.

    https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY