Is it possible to create turn-by-turn GPS navigation app on Android/iOS using Google Maps?
I agree with the answer stated above but there is also a key clause in section 10.4.c of the google maps API privacy terms here.
It states
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.
Therefore I'd like to proceed and answer your question and say No, it is not possible to create a turn-by-turn navigation application on android by using Google Maps API without breaching their privacy policy.
Edit: Read answer by Tushar below before using this answer
First Option
If you want to implement the navigation completely in your app you will have to use a combination of the Google Maps API and the Google Directions API. They are free to use up to a limit and then you have to pay for the api requests.(https://developers.google.com/maps/documentation/directions/)
Second Option
I would just send the latitude and longitude of the location you want to navigate to the devices Maps app. Here is some code to start you off with this method:
double lat = < latitude of the location you want to navigate to>
double lng = < longitude of the location you want to navigate to>
String format = "geo:0,0?q=" + lat + "," + lng + "( Location title)";
Uri uri = Uri.parse(format);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
This will open the device's Maps app and plot the location and the user can use the app to do what ever they want.
I would go with the Second Option, it is stupidly easy to implement.
After searching a lot, I have found two options for turn-by-turn navigation with voice instructions and arrow images.
- skobbler or sk maps (http://developer.skobbler.com/)
- HERE Maps (https://developer.here.com/)
HERE Maps is somewhat costly and does not allow free usage (only 90 days of trial period). But it has lots of advantages like:
Clear and perfect documentation: The documentation they provide is clear and easily understandable, also the demo app they provide has all the required things implemented. So you can copy-and-paste many things.
Developer friendly: Full control of maps for developers (no restrictions, you can do anything that you can think of with maps).
Coverage: Navigation is not only clear and good for some specific countries, but for almost all countries. I have checked it in India for example. Apple Maps is not providing routes in India, Google Maps are providing it, but from my perspective, HERE Maps is much clearer and even better than Google.
skobbler is good and allows free usage up to a limit, but it's not good for all countries (not covering India up to level). Also it is not that much developer friendly as HERE Maps.