如何从 Android 上的 Google 地图共享 url 获取坐标
Posted
技术标签:
【中文标题】如何从 Android 上的 Google 地图共享 url 获取坐标【英文标题】:How to get coordinates from Google Maps share url on Android 【发布时间】:2019-01-02 19:31:05 【问题描述】:我正在尝试解码此网址:https://www.google.com/maps/place//data=!4m2!3m1!1s0x4745bd4af4e60a51:0xd62aba005d92953d?utm_source=mstt_1LM_pY9N8KOrk5pGERKQRIPXvuU12TY
我猜“0x4745bd4af4e60a51:0xd62aba005d92953d”是存储坐标的部分,但我不知道如何解码。我试图将它从十六进制转换为十进制,但它没有给我坐标值。
【问题讨论】:
【参考方案1】:坐标在 UTM 中列出,而不是在纬度/经度中。有在线转换器可以帮助进行这种转换。当您单击该链接时,您将看到以下 URL: https://www.google.com/maps/place/Westfield/@46.225795,21.2673783,17z/data=!3m1!4b1!4m5!3m4!1s0x4745bd4af4e60a51:0xd62aba005d92953d!8m2!3d46.225795!4d21.269567.
坐标如下:46.225795,21.2673783 您有几个选择,1) 下载 Google 地球并在搜索框中输入坐标。从标签中,您可以检索纬度/经度 2) 打开谷歌地图并输入这些坐标,您将看到该搜索框下方列出的纬度/经度。
【讨论】:
Google 地球或 Google 地图对我没有帮助,因为我需要在我的 android 应用中获取坐标。【参考方案2】:经过更多研究,我发现this SO post 包含我的问题的确切答案。
两种方法都有效:
-
调用https://maps.googleapis.com/maps/api/place/details/json?key=YOUR_API_KEY&ftid=0xd62377123a70817:0x85e89b65fcf7c648 并从“几何”中提取坐标
将“0x85e89b65fcf7c648”(冒号后的第二个数字)转换为十进制
【讨论】:
以上是关于如何从 Android 上的 Google 地图共享 url 获取坐标的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Android Marshmallow 上的 Google 地图上显示当前位置?
如何通过滑行在 Google 地图上的 infoWindow 中获取图像 - Android
为啥我在 Google 地图上的当前位置在 Android 应用中不正确? [复制]