How to enable google map navigation in android app

2019-04-08 12:39发布

问题:

I have two points on google map first one is the source and second is the destination, I have the route between these points on the map.Now I want to navigate user from source to destination as Google does on Google Map Like this:-

回答1:

The Google Maps Android API v2 doesn't provide any functionality for navigation. It is in contradiction with Terms of Service of Maps APIs. Have a look at section 10.4 c (iii) of ToS:

No navigation. You will not use the Service or Content for or in connection with (a) real-time navigation or route guidance; or (b) automatic or autonomous vehicle control.

https://developers.google.com/maps/terms#section_10_4

If you need navigation you should create an intent that opens the Google Maps app in navigation mode. There is a Google Maps URLs that allows to construct a universal, cross-platform URL to launch Google Maps intents from your application. You can open navigation mode of native app following this documentation:

https://developers.google.com/maps/documentation/urls/guide#directions-action

Hope this helps!



回答2:

There is a way to stimulate a view like that but not embedded like uber but very close.

 public void loadNavigationView(String lat,String lng){
    Uri navigation = Uri.parse("google.navigation:q="+lat+","+lng+"");
    Intent navigationIntent = new Intent(Intent.ACTION_VIEW, navigation);
    navigationIntent.setPackage("com.google.android.apps.maps");
    startActivity(navigationIntent);
}

You call the method and provide the latitude and longitude.It will launch Google map navigation.Like uber