如何从我当前的应用程序打开** Google Maps **应用程序?

时间:2012-07-23 06:51:23

标签: android google-maps

如何在当前应用程序的按钮点击事件中打开 Google地图应用程序。

8 个答案:

答案 0 :(得分:5)

使用下面的行

String uri = "http://maps.google.com/";
            Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(uri));
            intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
            startActivity(intent);

将在地图应用程序中重定向。

答案 1 :(得分:3)

您可以打开谷歌地图,意图给出起点和终点。

Intent navigation = new Intent(Intent.ACTION_VIEW, Uri
        .parse("http://maps.google.com/maps?saddr="
                + Constants.latitude + ","
                + Constants.longitude + "&daddr="
                + latitude + "," + longitude));
startActivity(navigation);

这会打开任何地图应用程序。表示浏览器或谷歌地图应用程序。如果您只是想要谷歌地图并摆脱对话框,您可以给意图一个关于您想要使用哪个包的提示。

startActivity()添加此内容之前:

intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");

答案 2 :(得分:2)

您必须使用意图

这里有一个真实示例

http://www.tutorialforandroid.com/2009/10/launching-other-application-using-code.html

这里有理论示例

Open another application from your own (intent)

您可以使用Android 文档

http://developer.android.com/reference/android/content/Intent.html

希望它有所帮助! :)

答案 3 :(得分:1)

您可以在AndroidManifes.xml中指定“intent-filters”;有关如何从您的应用程序启动谷歌应用程序的更多信息,请参阅此链接:Intents List: Invoking Google Applications on Android Devices

答案 4 :(得分:1)

WebView view=(WebView) findViewById(R.id.w);    
Button button=(Button) findViewById(R.id.nxt);

button.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                     view.loadUrl("http://maps.google.co.in/maps?hl=en&tab=wl");
                    }
                        };

答案 5 :(得分:0)

您可以使用以下内容:Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("http://maps.google.com/maps?saddr=20.344,34.34&daddr=20.5666,45.345")); startActivity(intent);

答案 6 :(得分:0)

这是从我当前的应用中调用谷歌地图的另一种方法。

String SettingsPage = "com.google.android.apps.maps/com.google.android.maps.MapsActivity";

                try
                {
                Intent intent = new Intent(Intent.ACTION_MAIN);             
                intent.setComponent(ComponentName.unflattenFromString(SettingsPage));             
                intent.addCategory(Intent.CATEGORY_LAUNCHER );             
                startActivity(intent); 
                }
                catch (ActivityNotFoundException e)
                {
                 Log.e("Activity Not Found","");
                }
                catch (Exception e) {
                     Log.e("Activity Not Found",""+e);
                }

答案 7 :(得分:0)

使用它。 希望它适合你:

 Button showMap = (Button) findViewById(R.id.btn_showMap);
 showMap .setOnClickListener(new OnClickListener()
 {
 public void onClick(View v){
 Intent i = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("geo:"+ latitude +","+ longitude ));
 startActivity(i);
 }
 });