Android Studio:重定向到 phone 的 Google 地图应用程序,并预填了开始和结束地址
Android Studio: Redirecting to the phone's Google Maps App with a start and end address pre-filled
我想通过意图将用户重定向到 phone 上的 Google 地图应用程序,我假设获得 direction/route。但是,我希望用户输入起始地址和目的地地址。使用此信息,我希望打开输入起点和终点的地图。 (起始地址和结束地址将采用字符串格式,而不是 Lat/long)。
我做了研究,但我仍然对如何进行感到困惑。
感谢有关此查询的任何帮助。
提前致谢。
查看官方文档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);
}
这就是您传递 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。
我想通过意图将用户重定向到 phone 上的 Google 地图应用程序,我假设获得 direction/route。但是,我希望用户输入起始地址和目的地地址。使用此信息,我希望打开输入起点和终点的地图。 (起始地址和结束地址将采用字符串格式,而不是 Lat/long)。
我做了研究,但我仍然对如何进行感到困惑。
感谢有关此查询的任何帮助。
提前致谢。
查看官方文档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);
}
这就是您传递 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。