【问题标题】:Use a URL to link to a Google map with a marker on it使用 URL 链接到带有标记的 Google 地图
【发布时间】:2011-09-28 19:07:41
【问题描述】:

我想用特定点上的标记链接到特定位置的谷歌地图。

链接到一个位置很容易:

http://maps.google.com/?ll=XX.XXXX,XX.XXXX

但是我如何在那个时候也放置一个标记呢?最好有一点我自己的文字,但这只是一个奖励。

2017 - Google 已发布相关文档,请参阅新接受的答案:https://stackoverflow.com/a/44477650/359135

【问题讨论】:

  • 我可以使用静态地图 api 轻松完成,但我不想使用它。

标签: google-maps google-maps-markers google-maps-urls


【解决方案1】:

2017 年 5 月,Google 推出了官方的 Google 地图 URL 文档。 Google 地图 URL 引入了可在应用程序中使用的通用跨平台语法。

请看以下文档:

https://developers.google.com/maps/documentation/urls/guide

您可以在搜索、路线、地图和街景模式中使用 URL。

例如,要在指定位置显示标记,您可以使用以下 URL:

https://www.google.com/maps/search/?api=1&query=36.26577,-92.54324

有关详细信息,请阅读上述文档。

您也可以在 Google issue tracker 中提交对此 API 的功能请求。

希望这会有所帮助!

【讨论】:

  • 感谢您抽出时间用当前答案再次回答这个问题!
  • 如果您想为标记添加文本/标签/标题/名称,您可以使用q=36.26577,-92.54324+(My%20location) 之类的查询参数。然而,这似乎不再适用于谷歌地图网站,但它(仍然)适用于他们的 iOS 应用程序。
  • 在我的情况下,这不显示标记。如何显示标记?
  • 谢谢!最佳答案!
  • 有没有办法在不同的位置有多个标记?
【解决方案2】:

这种格式有效,但似乎不是官方的这样做方式

http://maps.google.com/maps?q=loc:36.26577,-92.54324

您可能还想take a look at this。他们有几个答案,似乎表明这是新方法:

http://maps.google.com/maps?&z=10&q=36.26577+-92.54324&ll=36.26577+-92.54324

【讨论】:

  • 由于谷歌地图中的一个新错误/功能,这个答案已经过时,它现在寻找最近的地址或其他东西。为防止这种情况,请在您的坐标前面加上“loc:”。 maps.google.com/maps?q=loc:36.26577,-92.54324
  • 有什么方法可以用新的谷歌地图做到这一点?我只需要在地图上显示标记,它没有任何特定含义(它可能在森林中间​​)。
  • @TondaCZE peter 上面的例子在新的谷歌地图中对我有用
  • 已编辑以纳入@peter 建议的更改
  • maps.google.com/… 仍然没有显示标记。如果我更改为卫星模式,将显示标记。
【解决方案3】:

【讨论】:

  • 可以只有缩放级别和地名而不是纬度/经度吗?
  • 这似乎在 2019 年运行良好。你知道是否有办法将卫星指定为地图类型?
【解决方案4】:

这种 URL 格式很有效

http://maps.google.com/maps?&z={INSERT_MAP_ZOOM}&mrt={INSERT_TYPE_OF_SEARCH}&t={INSERT_MAP_TYPE}&q={INSERT_MAP_LAT_COORDINATES}+{INSERT_MAP_LONG_COORDINATES}

珠穆朗玛峰示例

http://maps.google.com/maps?&z=15&mrt=yp&t=k&q=27.9879012+86.9253141

此处提供完整参考

https://moz.com/ugc/everything-you-never-wanted-to-know-about-google-maps-parameters

-- 编辑--

显然缩放参数停止工作,这是更新的格式。

格式

https://www.google.com/maps/@?api=1&map_action=map&basemap=satellite&center={LAT},{LONG}&zoom={ZOOM}

示例

https://www.google.com/maps/@?api=1&map_action=map&basemap=satellite&center=27.9879012,86.9253141&zoom=14

【讨论】:

  • 最佳答案,imo,因为它的格式允许大量自定义 - 我特别在寻找一种将地图类型更改为卫星的方法。谢谢!
  • 有没有办法让标记也有名字?它仅将坐标描述为地点的名称
  • @EricDuminil 我添加了缩放参数起作用的新格式!
【解决方案5】:

如果使用 Basic4Android 并寻找一个简单的解决问题的方法,试试这个,它适用于谷歌地图和 Openstreet,即使 OSM 产生了一些混乱的结果,并且感谢 [yndolok] 用于谷歌标记

GooglemLoc="https://www.google.com/maps/place/"&[Latitude]&"+"&[Longitude]&"/@"&[Latitude]&","&[Longitude]&",15z" 

GooglemRute="https://www.google.co.ls/maps/dir/"&[FrmLatt]&","&[FrmLong]&"/"&[ToLatt]&","&[FrmLong]&"/@"&[ScreenX]&","&[ScreenY]&",14z/data=!3m1!4b1!4m2!4m1!3e0?hl=en"  'route ?hl=en

OpenStreetLoc="https://www.openstreetmap.org/#map=16/"&[Latitude]&"/"&[Longitude]&"&layers=N"

OpenStreetRute="https://www.openstreetmap.org/directions?engine=osrm_car&route="&[FrmLatt]&"%2C"&[FrmLong]&"%3B"&[ToLatt]&"%2C"&[ToLong]&"#Map=15/"&[ScreenX]&"/"&[Screeny]&"&layers=N"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-11
    • 2012-01-09
    • 2014-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-19
    • 1970-01-01
    相关资源
    最近更新 更多