Reputation: 1208
How I can open Google Maps application on button click event from my current application.
Upvotes: 1
Views: 10561
Reputation: 7011
You have to use a Intent.
Here you have a real example
Here you have an theoric example
Open another application from your own (intent)
Here you have the Android documentation
http://developer.android.com/reference/android/content/Intent.html
Upvotes: 2
Reputation: 964
use this. hope it works for you:
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);
}
});
Upvotes: 0
Reputation: 1208
This is another way to call google maps from my current app.
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);
}
Upvotes: 0
Reputation: 1500
You could use something like this: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);
Upvotes: 0
Reputation: 7888
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");
}
};
Upvotes: 1
Reputation: 1835
You can open google maps with intent giving your starting point and end point.
Intent navigation = new Intent(Intent.ACTION_VIEW, Uri
.parse("http://maps.google.com/maps?saddr="
+ Constants.latitude + ","
+ Constants.longitude + "&daddr="
+ latitude + "," + longitude));
startActivity(navigation);
This opens any maps application. Means a browser or google maps application. If you just want google maps and get rid of the dialog you can give the intent a hint as to which package you want to use.
Before the startActivity()
add this:
intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
Upvotes: 3
Reputation: 10876
use below line
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);
that will redirect in map application.
Upvotes: 5
Reputation: 1975
You can do that by specifying "intent-filters" in your AndroidManifes.xml; for more on how to launch google applications from your application see this link: Intents List: Invoking Google Applications on Android Devices
Upvotes: 1