通过Android Intent在Google地图中添加多个航点

San*_*San 7 android google-maps android-intent

作为我的应用中的导航的一部分,我将我的应用程序与lats和longs一起重定向到谷歌地图.我已成功传递源和目标,并直接在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);
Run Code Online (Sandbox Code Playgroud)

但我的问题如何通过意图将多个点传递到Google地图.最近谷歌推出了在谷歌地图应用程序的移动版本中添加多个目的地,我认为它可以在Google Directions API中使用,但我不想通过在我的应用程序中集成G​​oogle方向来采取扭曲的路径,我宁愿采取谷歌地图的高速公路.

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

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);
Run Code Online (Sandbox Code Playgroud)

上面的代码只有在我们在Chrome中打开它时才有效,但是我希望它在Google地图中打开,甚至添加一个mapIntent.setPackage("com.google.android.apps.maps");不起作用,但上面的uri通过的显然是一个可以在谷歌地图中找到的网址.

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

PS:这可以实现吗?????

Sac*_*shi 6

  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

    航点1 = 18.642344,73.707880

    航点2 = 18.652344,73.727880

    目的地 = 18.6530132,73.7270

  2. 调用 Google 地图 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 谷歌地图应用程序