Diferencia entre el geocoder de ubicaciones de Android y la API de mapas de Google

En mi aplicación de Android, necesito obtener la dirección de mis coordenadas obtenidas del GPS. Cuál es el mejor método para conseguirlo. ¿Utilizando android.location.Geocoder a través de código siguiente?

Geocoder geo = new Geocoder(Booking.this); try { List<Address> add = geo.getFromLocation(location.getLatitude(), location.getLongitude(), 3); Log.d("Geocode location", ""+add.get(0)); } catch (IOException e1) { e1.printStackTrace(); } 

o mediante el uso de Google Map API a través de este enlace http://maps.googleapis.com/maps/api/geocode/json?latlng=13.9020,80.3498&sensor=true ?

Será útil que alguien guíe el método de Geocodificación correcto.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.