Android Studio:重定向到手机的谷歌地图应用程序,并预先填写了开始和结束地址

Posted

技术标签:

【中文标题】Android Studio:重定向到手机的谷歌地图应用程序,并预先填写了开始和结束地址【英文标题】:Android Studio: Redirecting to the phone's Google Maps App with a start and end address pre-filled 【发布时间】:2017-12-30 18:48:48 【问题描述】:

我想通过我假设获取方向/路线的意图将用户重定向到手机上的 Google 地图应用。但是,我希望用户输入起始地址和目的地地址。使用这些信息,我希望打开输入了起点和终点的地图。 (起始地址和结束地址将采用字符串格式,而不是纬度/经度)。

我做了研究,但我仍然对如何进行感到困惑。

感谢有关此调查的任何帮助。

提前致谢。

【问题讨论】:

【参考方案1】:

这是您传递 Google 地图地址的方式。你不一定要通过纬度和经度。

Uri gmmIntentUri = Uri.parse("geo:0,0?q=1600 Amphitheatre Parkway, Mountain+View, California");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

您可以通过here获取更多信息。

【讨论】:

谢谢阿伦!我想知道我们如何通过指定起始地址和结束地址来获取方向?我确实查看了您链接的资源,但它没有解释如何使用起始地址和结束地址获取路线。不确定我是否遗漏了什么。 应该被接受,因为该链接提供了执行所有操作所需的所有信息,例如输入查询词、行车路线等。【参考方案2】:

查看官方文档here。您只需要通过 Intent 传递地理点。例如,要显示旧金山的地图,可以使用以下代码:

Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
if (mapIntent.resolveActivity(getPackageManager()) != null) 
    startActivity(mapIntent);

【讨论】:

感谢 Prokash。是否可以指定起始地址和结束地址?有没有办法传入两个包含起始地址和结束地址的字符串让我获取路线?

以上是关于Android Studio:重定向到手机的谷歌地图应用程序,并预先填写了开始和结束地址的主要内容,如果未能解决你的问题,请参考以下文章

如何从我的应用程序中打开标准的谷歌地图应用程序,然后选择一个位置然后重定向回我的应用程序?

我应该为这个重定向标头 301,谷歌索引将如何受到影响?

如何阻止重定向的 URL 被屏蔽?

如何在不使用 kml 的情况下向 android studio 中的谷歌地图应用程序添加大量多边形

Android Studio 谷歌地图自定义地图,只想显示自定义地图但利用谷歌地图功能

如何从ios中的谷歌帐户注销?