我如何构建一个 Google 地图 URL 用于 waypoints 的方向,它也适用于移动应用程序?

How can I build a Google Maps URL for directions with waypoints that also works in mobile apps?

我正在开发一个使用 Google Maps Directions API 的网络应用程序。我正在尝试在一些动态创建的方向下方创建一个 hyperlink(使用 lat/lon 坐标作为 waypoints),这将允许移动用户在他们的移动设备上查看相同的方向并与之交互.

例如,我创建了一个方向 link,其中 3 个 waypoints 由 lat/lon 对组成。第一个是亚特兰大西南 (33.67,-84.61)。第二个是北方 (34.01,-84.33),第三个是东南 (33.66,-84.10)。 (考虑在亚特兰大市上绘制一个简单的 "A" 形状。)使用几个过时的第 3 方指南和其他 Whosebug 答案,我制作了地图 URL 的最简单版本,似乎 return 我想要的结果。它看起来像这样:

http://maps.google.com/maps?f=d&saddr=33.67,-84.61&daddr=34.01,-84.33+to:33.66,-84.10

此说明 URL 在网络浏览器中运行良好,即使是移动浏览器,但在 iOS 和 Android 本机版本中似乎有不同的结果Google 地图应用程序。 下面是我在上面 URL.

上进行的一些测试的屏幕截图

同样的 URL 当你打开它时似乎很好玩:

Google 是否在某处正式记录了这些 URL 路线?我可以使用哪些参数来实现跨移动平台方向 link 行为的一致性目标?

这里是查看指南的地方 https://developers.google.com/maps/documentation/directions/intro#Introduction

我不确定您在不同平台上获得的数据集有何不同。但请确保您提供了正确的传输类型、alterneteRequire 标志和 Optimize 标志。

我注意到在解析腿中存在的多段线时出现了一些问题,这些多段线给出了一些中断的多段线路径。我不确定是我的逻辑还是数据错误。

我们可以请求多个停止方向来启动 Google 如下所示的地图,

形成方向URL

https://www.google.com/maps/dir/?api=1&parameters

用法:

https://www.google.com/maps/dir/?api=1&origin=Paris%2CFrance&destination=Cherbourg%2CFrance&travelmode=driving&waypoints=Versailles%2CFrance%7CChartres%2CFrance%7CLe+Mans%2CFrance%7CCaen%2CFrance

如需更多示例,请联系官方 documentation