android - Android 是否有等同于 iOS 的 Google Maps URL 方案?

标签 android mobile-website

我想通过移动网络链接以导航模式打开 Google map 。对于使用 https://developers.google.com/maps/documentation/ios/urlscheme 的 iOS 设备来说,这似乎很容易

是否有适用于 Android 的等效产品?我只能找到这个:https://developer.android.com/guide/appendix/g-app-intents.html

但据我所知,这不允许您指定“transitmode”和获取路线所需的其他参数。

最佳答案

实际上,对 iOS 文档中描述的方法稍作修改也可以在这里使用(我在将它放在这里之前对其进行了测试,尽管是在 native 应用程序中而不是 Web 链接中)。

此功能所需的参数与 iOS 文档中列出的参数几乎相同:

From the iOS Docs:

参数:

  • saddr:设置路线搜索的起点。这可以是 纬度、经度或查询格式的地址。如果是查询 返回多个结果的字符串,第一个结果将是 选择。如果该值留空,则表示用户当前的 位置将被使用。
  • daddr:设置路线搜索的终点。有相同的 格式和行为与 saddr 相同。
  • directionsmode:交通方式。可以设置为: 驾车、乘坐公交车或步行。

它们实际上非常相似。但是,在文档中找不到它们。此外,虽然前 2 个参数在这里以通常的方式工作,但最后一个参数 directionsmode 不会按原样工作。但是,下面列出了一种解决方法。

也就是说,可以构造一个简单的 URL,然后将其作为 Uri 传递给 Intent,然后处理要启动的应用程序(Google map 如果已安装和/或可供选择的浏览器列表)

String mapURL = http://maps.google.com/maps?saddr=-33.9417, 150.9473&daddr=-33.92050, 151.04287&dirflg=d
Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(mapURL));
startActivity(intent);

公交模式的一些变化:

  1. &dirflg=d = Driving 方向(这是默认模式。省略它与显式输入相同)。
  2. &dirflg=w = 步行路线
  3. &dirflg=r = 用于公共(public)交通。
  4. &dirflg=b = 骑车路线。

也就是说,在运行这些测试时(我承认我很好奇,在看到这个问题后想进一步测试 ;-)),the Travel Modes section 中列出的模式似乎行得通!

一些小证明:

enter image description here enter image description here

备注:Credit for the initial discovery of the options

关于android - Android 是否有等同于 iOS 的 Google Maps URL 方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17915901/

相关文章:

html - 如何正确获取移动页面缩放?

android - 什么时候调用 Linux 内核驱动程序的探测函数?

android - PreferenceFragmentCompat 不会在 AppCompatPreferenceActivity 中加载 - 尝试实例化一个不是 Fragment 的类

android - 非法状态异常 : Can not perform this action after onSaveInstanceState - Android

android - 移动图像上传先处理?

.net - Umbraco - 手机检测和重定向

java - 为什么我添加到项目中的计时器类在单击按钮时没有启动?

android - 在 Android 中处理 "blocking"长时间运行的操作

css - 响应式设计与媒体查询 : screen size?

android - 移动 Web 开发框架