【问题标题】:Adding multiple way points in Google Maps via Android Intent通过 Android Intent 在 Google 地图中添加多个航点
【发布时间】:2016-07-14 12:35:31
【问题描述】:

作为我应用中导航的一部分,我将我的应用与经纬度一起重定向到 Google 地图。我已经成功地传递了源和目的地,并直接在谷歌地图中打开。

Uri gmmIntentUri = Uri.parse("google.navigation:q=9.883456,78.120150");
Intent mapIntent = new Intent(Intent.ACTION_VIEW,gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);

但我的问题如何通过意图将多个点传递给 Google 地图。最近谷歌引入了在谷歌地图应用程序的移动版本中添加多个目的地,我认为它在谷歌方向 API 中可用,但我不想通过在我的应用程序中集成谷歌方向来走弯路,我宁愿采取通往谷歌地图的高速公路。

我一直在搜索这个主题,但我发现的只是以下内容,但这也不起作用。

Intent intent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("http://maps.google.com/maps?saddr=st.%20louis,mo&daddr=washington,dc%20to:chicago,il%20to:new%20york,ny"));
startActivity(intent);

上面的代码只有在我们在 Chrome 中打开它时才有效,但我希望它在谷歌地图中打开,甚至添加 mapIntent.setPackage("com.google.android.apps.maps"); 也不起作用,但很明显上面传递的 uri 是一个在谷歌中可用的 URL网页版地图。

任何关于如何实现这一目标的见解或想法都将受到欢迎。

PS:这到底能不能实现??????

【问题讨论】:

标签: android google-maps android-intent


【解决方案1】:
  1. 构造 URL = https://www.google.co.in/maps/dir/18.6121132,73.707989/18.642344,73.707880/18.652344,73.727880/18.6530132,73.7270

    在上面的网址中

    来源 = 18.6121132,73.707989

    waypoint1 = 18.642344,73.707880

    waypoint2 = 18.652344,73.727880

    目的地 = 18.6530132,73.7270

  2. 调用 Google Map Intent URI

    Uri gmmIntentUri = Uri.parse("https://www.google.co.in/maps/dir/18.6121132,73.707989/18.5,73.7/18.8,73.71"); Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri); mapIntent.setPackage("com.google.android.apps.maps"); startActivity(mapIntent);

我已经用多个航点对其进行了测试,它对我有用。 我希望这对其他人有帮助

注意:它仅适用于最新的 Android 谷歌地图应用程序

【讨论】:

  • 您如何在 Uri.parse "18.6121132,73.707989/18.5,73.7/18.8,73.71" 中编写这些值需要澄清。
  • 那些是纬度和经度吗?
  • 是的,正确的是纬度和经度
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-18
  • 2017-02-08
  • 1970-01-01
相关资源
最近更新 更多