Схема URL-адресов Google Maps для iOS

На устройствах под управлением iOS 9 и более поздних версий вы можете использовать универсальные ссылки для запуска Google Maps, если у вас есть URL-адрес Google Maps.

Вы можете использовать схему URL-адресов Google Maps для запуска приложения Google Maps для iOS , выполнения поиска, запроса маршрута и отображения карт. При запуске Google Maps ваш идентификатор пакета автоматически отправляется в составе запроса.

Для использования схемы URL-адресов Google Maps ключ API Google не требуется.

Google Maps для iOS поддерживает универсальные ссылки на устройствах под управлением iOS 9 или более поздних версий.

Если ваш URL-адрес соответствует следующему регулярному выражению, и на устройстве установлена ​​iOS 9 или более поздняя версия, вы можете рассмотреть возможность использования метода openURL: напрямую.

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

Например,

Быстрый

UIApplication.shared.openURL(URL(string:"https://www.google.com/maps/@42.585444,13.007813,6z")!)

Objective-C

[[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"https://www.google.com/maps/@42.585444,13.007813,6z"]];

Обзор

Схема URL-адреса позволяет запускать iOS-приложение из другого iOS-приложения или веб-приложения. Вы можете задать параметры в URL-адресе, которые передаются запускаемому приложению. Приложение Google Maps для iOS поддерживает следующие схемы URL-адресов:

  • comgooglemaps:// — Эта схема позволяет запустить приложение Google Maps для iOS и выполнить одно из нескольких действий:

    • Отобразить карту в указанном месте и с заданным уровнем масштабирования.
    • Найдите нужные места или объекты и отобразите их на карте.
    • Запросите маршрут из одного места в другое. Маршрут можно получить для четырех видов транспорта: автомобиль, пешком, на велосипеде и на общественном транспорте.
    • Добавьте навигацию в ваше приложение.
  • comgooglemapsurl:// — Эта схема позволяет запускать приложение Google Maps для iOS, используя URL-адрес, полученный с веб-сайта Google Maps для настольных компьютеров. Это означает, что вы можете предоставить пользователям мобильный интерфейс, вместо загрузки веб-сайта Google Maps.

    • Исходный URL может быть адресом maps.google.com , google.com/maps или любым допустимым доменным именем страны верхнего уровня вместо com . Вы также можете указать URL-адреса перенаправления goo.gl/maps .

Запустите приложение Google Maps для iOS и выполните определенную функцию.

Для запуска приложения Google Maps для iOS и, при необходимости, выполнения одной из поддерживаемых функций, используйте URL-адрес следующего вида:

comgooglemaps://?parameters

Параметры подробно описаны далее в этом документе.

Проверьте наличие приложения Google Maps на вашем устройстве.

Прежде чем показывать пользователю один из этих URL-адресов в вашем приложении, необходимо убедиться, что приложение установлено. Ваше приложение может проверить доступность схемы URL-адресов с помощью следующего кода:

Быстрый

UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
    [NSURL URLWithString:@"comgooglemaps://"]];

Например, чтобы отобразить карту Центрального парка в Нью-Йорке, можно использовать следующий код:

Быстрый

if (UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)) {
  UIApplication.shared.openURL(URL(string:
    "comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic")!)
} else {
  print("Can't use comgooglemaps://");
}

Objective-C

if ([[UIApplication sharedApplication] canOpenURL:
     [NSURL URLWithString:@"comgooglemaps://"]]) {
  [[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
} else {
  NSLog(@"Can't use comgooglemaps://");
}

Отобразить карту

Используйте схему URL-адресов для отображения карты с заданным уровнем масштабирования и местоположением. Вы также можете накладывать другие виды поверх карты или отображать изображения Street View.

Параметры

Все перечисленные ниже параметры являются необязательными. Если параметры не заданы, схема URL-адреса запустит приложение Google Maps для iOS.

  • center : Это центральная точка области просмотра карты. Форматируется как строка, разделенная запятыми latitude,longitude .
  • mapmode : Задает тип отображаемой карты. Может быть установлено значение: standard или streetview . Если не указано, будут использоваться текущие настройки приложения.
  • views : Включает/выключает определенные виды отображения. Может быть установлено значение: satellite , traffic или transit . Можно задать несколько значений, используя запятую в качестве разделителя. Если параметр не указан, то все виды отображения будут удалены.
  • zoom : Задает уровень масштабирования карты.

В этом примере URL-адреса отображается карта с центром в Нью-Йорке при масштабе 14 и включенным отображением дорожной ситуации:

comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic

Схема дорожного движения Нью-Йорка

Вот ещё несколько примеров:

comgooglemaps://?center=37.788463,-122.392545&zoom=12
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview

Используйте эту схему для отображения поисковых запросов в указанной области просмотра.

Параметры

Помимо параметров, используемых для отображения карты, функция поиска поддерживает параметр q .

  • q : Строка запроса для вашего поиска.

Этот пример URL-адреса используется для поиска слова «Пицца» в указанном регионе:

comgooglemaps://?q=Pizza&center=37.759748,-122.427135

Пиццерия поблизости

Вот ещё несколько примеров:

comgooglemaps://?q=Steamers+Lane+Santa+Cruz,+CA&center=37.782652,-122.410126&views=satellite,traffic&zoom=15
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan&center=35.660888,139.73073&zoom=15&views=transit

Показать инструкции

Используйте эту схему для запроса и отображения маршрута между двумя точками. Вы также можете указать вид транспорта.

Параметры

  • saddr : Задает начальную точку для поиска маршрута. Это может быть широта, долгота или адрес в формате запроса. Если это строка запроса, возвращающая более одного результата, будет выбран первый результат. Если значение оставить пустым, будет использоваться текущее местоположение пользователя.
  • daddr : Задает конечную точку для поиска маршрута. Имеет тот же формат и поведение, что и saddr .
  • directionsmode : Способ передвижения. Может быть установлен на: driving , transit , bicycling или walking .

В приведенном примере URL-адреса отображается маршрут общественного транспорта между офисом Google в Нью-Йорке и аэропортом имени Джона Кеннеди:

comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit

Маршруты общественного транспорта

Вот ещё несколько примеров:

comgooglemaps://?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA&center=37.422185,-122.083898&zoom=10
comgooglemaps://?saddr=2025+Garcia+Ave,+Mountain+View,+CA,+USA&daddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA,+United+States&center=37.423725,-122.0877&directionsmode=walking&zoom=17

Добавьте навигацию в ваше приложение.

Запуск приложения Google Maps для iOS с запросом на построение маршрута предоставляет пользователям доступ к пошаговой навигации прямо из приложения. Вы можете использовать схему URL-адреса comgooglemaps:// .

Запустите приложение Google Maps для iOS по URL-адресу Google Maps для настольных компьютеров.

Если ваше приложение имеет доступ к уже существующему URL-адресу Google Maps, например, на веб-странице или в базе данных, вы можете использовать эту схему для открытия URL-адреса в приложении Google Maps для iOS, тем самым обеспечивая пользователям наилучший мобильный опыт.

  • Замените схему http:// или https:// на comgooglemapsurl:// .

Поддерживаемые форматы URL-адресов Google Maps

Схема comgooglemapsurl:// поддерживает URL-адреса, соответствующие этому регулярному выражению, где {TLD} обозначает любой допустимый домен верхнего уровня страны. Для наглядности добавлены переносы строк:

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

Проверьте доступность приложения Google Maps.

Сначала убедитесь, что приложение Google Maps для iOS доступно на устройстве и поддерживает схему URL:

Быстрый

UIApplication.shared.canOpenURL(URL(string:"comgooglemapsurl://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
   [NSURL URLWithString:@"comgooglemapsurl://"]];

Примеры

Пример стандартного URL-адреса Google Maps:

Оригинальный URL-адрес Google Maps:

https://www.google.com/maps/preview/@42.585444,13.007813,6z

Используя схему URL:

comgooglemapsurl://www.google.com/maps/preview/@42.585444,13.007813,6z

Пример стандартного URL-адреса Google Maps:

Оригинальный URL-адрес Google Maps:

https://maps.google.com/?q=@37.3161,-122.1836

Используя схему URL:

comgooglemapsurl://maps.google.com/?q=@37.3161,-122.1836