我在我的应用程序中的谷歌地图上有一个地点的地点 ID。有没有办法将地点 ID 放在 URL 中并直接链接到页面?还是必须通过 URL 完成?
我似乎在文档中找不到任何详细说明。我在下面尝试过,但它只是让我得到标准的谷歌地图页面:
https://maps.google.com/maps?placeid=ChIJN1t_tDeuEmsRUsoyG83frY4
我在我的应用程序中的谷歌地图上有一个地点的地点 ID。有没有办法将地点 ID 放在 URL 中并直接链接到页面?还是必须通过 URL 完成?
我似乎在文档中找不到任何详细说明。我在下面尝试过,但它只是让我得到标准的谷歌地图页面:
https://maps.google.com/maps?placeid=ChIJN1t_tDeuEmsRUsoyG83frY4
最近,在 2017 年 5 月,Google 推出了新的 Google Maps URLs API。您可以在官方文档中阅读有关此 API 的信息
https://developers.google.com/maps/documentation/urls/guide
因此,从现在开始,您可以使用地点 ID 为 Google 地图构建一个 URL。在您的特定情况下,此 URL 将是
https://www.google.com/maps/search/?api=1&query=Google&query_place_id=ChIJN1t_tDeuEmsRUsoyG83frY4
希望这可以帮助!
不是直接的,使用placeID可以得到各种JSON或XML格式的信息,其中还有地点的lat lng和地址,可以很方便的定位到地图 google developer doc
特定 Google Place 的 URL 由地点详细信息 API 端点返回。
例如,如果您查询:
https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJV2BQ4laeekgRFauLvdXbFXE&key=YOUR_API_KEY
您会看到在返回的 JSON 中有一个键 'url' 指向https://maps.google.com/?cid=8148660811851344661
此时,生成直接指向正确 google 位置的一般链接的正确格式是:https://maps.google.com/?cid=[place_id]&t=[maptype]
地图类型参数“t”显然是必要的。没有它,当链接打开时,谷歌地图似乎会执行更一般的搜索,有时会成功,有时不会。有了它,无论是在浏览器中还是在移动设备上的应用程序中打开,地图每次都会打开到正确的位置。
将此参数设置为街道地图的“m”和卫星地图的“k”。
SO上的很多答案显示以下语法,如果附近有两个同名的位置,通常会产生不需要的结果,例如: https ://www.google.com/maps/place/Starbucks/@43.088554,-88.06579,17z/
如果您已经在使用 google places api,那么您有 place_id,所以我建议使用它来避免歧义。