Как связать Google Maps с определенной долготой и широтой?


219

У меня есть небольшое приложение, которое дает текущее местоположение: долгота и широта. Теперь я должен просмотреть карты Google с долготой и широтой. Пожалуйста, предложите, как я могу это сделать.

Ответы:


218

Эта схема снова изменилась (23 октября 2018 года). Смотрите ответ Кушагра для последних.

Это для карты с маркером (через комментарий aaronm ):

https://www.google.com/maps/?q=-15.623037,18.388672

Для более старого примера (без маркера на этом):

https://www.google.com/maps/preview/@-15.623037,18.388672,8z

Самый старый формат:

http://maps.google.com/maps?ll=-15.623037,18.388672&spn=65.61535,79.013672


1
Есть ли где-нибудь информация о новом формате? В частности, в Интернете полно примеров старого формата, и гугл (sic) новый формат трудно из всех шумов.
Микко Охтамаа

43
Приведенный выше «новый» формат не включает маркер. Если вы используете этот формат, он работает - google.com/maps/?q=<lat >,< long > например: google.com/maps/?q=-15.623037, 18.388672
AaronM

1
Есть ли способ указать тип карты (гибрид, дорога и т. Д.)?
Redtopia

Спасибо. Можно ли показать булавку на пользовательском месте?
pixparker

3
Новый лучший ответ в соответствии с ответом @Kushagr Arora - google.com/maps/search/?api=1&query=<lat >,< lng >
Дэйв,

357

Лучше всего использовать qпараметр, чтобы он отображал карту с отмеченной точкой. например.:

https://maps.google.com/?q=<lat>,<lng>

@WareNinja вы знаете, как с этим совмещать направления?
Сержиу С. Филу,

8
Как добавить параметр масштабирования?
Разгриз

Спасибо, это также позволяет Citymapper понимать ссылку в случае, если эта ссылка находится внутри приложения
vaskort

Как я могу создать ярлык для этого URL?
Джа

124

На сегодняшний день (2014/09/23) я обнаружил, что для получения маркера на точном месте (не в приближении) вы можете использовать:

http://www.google.com/maps/place/49.46800006494457,17.11514008755796

Кроме того, если вы хотите указать центр карты и масштаб:

http://www.google.com/maps/place/49.46800006494457,17.11514008755796/@49.46800006494457,17.11514008755796,17z

Если вы хотите использовать тип спутниковой карты, тогда добавьте /data=!3m1!1e3

http://www.google.com/maps/place/49.46800006494457,17.11514008755796/@49.46800006494457,17.11514008755796,17z/data=!3m1!1e3

И если вы хотите вид местности карты, то добавьте /data=!3m1!4b1

https://www.google.com/maps/place/49.46800006494457,17.11514008755796/@49.46800006494457,17.11514008755796,17z/data=!3m1!4b1

Есть идеи, как добавить тип карты (гибрид и т. Д.)?
Redtopia

1
@Redtopia, смотрите мой обновленный ответ для типа спутниковой карты.
Pogo19

Спасибо! Знаете ли вы, что означает эта переменная данных или как ее интерпретировать? Кроме того, есть ли какие-либо документы, о которых вы знаете, которые описывают эту новую схему связывания?
Redtopia

1
@Redtopia, это всего лишь экспериментальные знания. На самом деле, мне пришлось попробовать несколько параметров URL, чтобы найти ответ для вас. Я не нашел такой документации. Сожалею!
Pogo19

2
Это февраль 2016 года, и похоже, что этот метод все еще работает. Отлично сработано.
gmeben

85

На сегодняшний день (23 октября 2018 г.) Google предоставил универсальный URL, который достаточно эффективно работает на кроссплатформенных платформах, и поэтому Google рекомендует этот метод.

Синтаксис: https://www.google.com/maps/search/?api=1&query=<lat>,<lng>

Пример: https://www.google.com/maps/search/?api=1&query=28.6139,77.2090 (Нью-Дели, Индия)

Документация / Источник: https://developers.google.com/maps/documentation/urls/guide


Старый формат URL все еще применяется , если вам нужны функции , которые недоступны в новом. Оба формата называются «Универсальные ссылки», хотя некоторые из них не работают на Android. Я думаю, что Google поддерживает теорию мультивселенной. :-)
Эдвард Брей

35

Если вы хотите открыть Google Maps в браузере:

http://maps.google.com/?q=<lat>,<lng>

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

comgooglemaps://?q=<lat>,<lng>

Чтобы открыть приложение Google Maps на Android, используйте geo: intent :

geo:<lat>,<lng>?z=<zoom>


1
Вы также можете использовать «google.navigation: q = широта, долгота», чтобы сразу начать навигацию с приложением карт Google, но не работает с некоторыми приложениями GPS. Более общим является «geo: <lat>, <lng>? Q = <lat>, <lng> (Label, Name)», как указано ojus kulkarni em в предыдущем комментарии (параметры заставляют отображать маркер, помогая перемещаться)
Мануэль Ромейро

19

Это выходит за рамки вопроса, но я думаю, что было бы также интересно узнать, как связать маршрут. Запрос будет выглядеть так:

https://www.google.es/maps/dir/'52.51758801683297,13.397978515625027'/'52.49083837044266,13.369826049804715'

11

Это URL-адреса, которые работают:

http://maps.google.com/?q=<LAT>,<LNG>

https://maps.google.com/?q=<LAT>,<LNG>&ll=<LAT>,<LNG>&z=18

https://www.google.com/maps/@<LAT>,<LNG>,16z

https://maps.google.com/?q=<LAT>,<LNG>&z=16

Хотя (для заядлых читателей) Это последнее из Google (22 августа 2017 г.):

URL-адреса
карт URL- адреса карт с отображением
карты URL-адреса карт с действием поиска

От гугл

Поиск : при поиске определенного места полученная карта помещает булавку в указанное место и отображает доступные сведения о месте.

Важный : параметр api = 1 определяет версию URL Карт, для которой этот URL предназначен. Этот параметр обязателен в каждом запросе. Единственное допустимое значение - 1. Если в URL отсутствует api = 1, все параметры игнорируются и запускается приложение Google Maps по умолчанию, либо в браузере, либо в мобильном приложении Google Maps, в зависимости от используемой платформы (для Например, https://www.google.com/maps ).


8

Чтобы открыть приложение Google Maps в Android: -

geo:<lat>,<lng>?z=<zoom>

открыть приложение с маркером для указания местоположения: -

geo:<lat>,<lng>?q=<lat>,<lng>(Label,Name)

открыть карту Google в IOS: -

comgooglemaps://?q=<lat>,<lng>

открыть Google Maps в браузере со следующими параметрами: -

http://maps.google.com/maps?z=12&t=m&q=<lat>,<lng>
  • z это уровень масштабирования (1-21)
  • tтип карты (карта " m ", спутник " k ", гибрид " h ", местность " p ", " e " GoogleEarth)
  • q это поисковый запрос





0

Найдите свое местоположение в программе Google Планета Земля и нажмите значок «Просмотр в Картах Google». Панель URL в вашем браузере покажет нужный вам URL.


0

Чтобы получить текущее местоположение в качестве начальной точки, вам нужно использовать этот URL:

https://www.google.com/maps/dir/?api=1&origin=Current+Location&destination=<latitude>,<longitude>

Вы можете заполнить целевой параметр значениями адреса, имени или широты и долготы.


0

Откройте карту Google и покажите схему расположения URL и пин-код местоположения

UIApplication.shared.openURL(URL(string:"https://maps.google.com/?q=\(dicLocation.stringValueForKey("latitude")),\(dicLocation.stringValueForKey("longitude")),15z")!)
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.