|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
|
Herramientas |
#1
|
||||
|
||||
como marcar una ruta con google maps api v2? y como a partir de una dirección te lo marque en un mapa
hola a todos, alguien sabe como hacer desde una App que dados dos puntos te marque la ruta?...he visto una App que si lo hace "dónde está mi coche!!!".. le he mandado un mail al autor y si me contesta lo posteo pero por si acaso no me contesta y alguien sabe como hacerlo..se lo agradeceré infinito.
Por otra parte, alguien sabe como hacer que a partir de una dirección te la marque en un mapa, al estilo de la web google maps? todo esto me refiero con la api v2... que es la que acabo de conocer..las demás no tengo ni idea...llevo un mes peleándome con android..... gracias por adelantado.. Quim |
|
#2
|
||||
|
||||
Para la 2ª pregunta, da igual con que API sea, como si no usas mapas, tienes que usar Geocoder:
http://developer.android.com/intl/es.../Geocoder.html Yo lo que hago es cuando hago pulsación larga sobre el mapa (con API V2) en ese momento hacer la solicitiud del Geocoder, creo que es bastante aproximado a lo que buscas. Si no te aclaras con el Geocoder dilo y te pongo un fragmento del código que uso yo. |
#3
|
||||
|
||||
ups..esto del geocoder es nuevo...
muchas gracias voy a mirarlo! |
#4
|
||||
|
||||
bueno, pues te agradeceré que me pongas ese fragmento..ya que según estoy viendo lo del overlay para usarlo con el geocoder está obsoleto .. ¿o me estoy liando?
gracias de nuevo |
#5
|
||||
|
||||
EDITO: Perdón, acabo de volver a releer tu pregunta y esta función hace justo lo contrario. Ahora después te pongo un código que hace justo lo que quieres, que también lo tengo hecho en mi App.
Código:
Geocoder geocoder = new Geocoder(mContext); double latitude = latlng.latitude; double longitude = latlng.longitude; List<Address> addresses = null; String addressText=""; try { addresses = geocoder.getFromLocation(latitude, longitude,1); if(addresses != null && addresses.size() > 0 ){ Address address = addresses.get(0); addressText = String.format("%s, %s, %s", address.getMaxAddressLineIndex() > 0 ? address.getAddressLine(0) : "", address.getLocality(), address.getCountryName()); } } catch (IOException e) { e.printStackTrace(); } return addressText; EDITO 2: Este si es el código que hace lo que quieres Código:
Geocoder geocoder = new Geocoder(mContext); List<Address> addresses = null; try { addresses = geocoder.getFromLocationName(locationName[0], 3); } catch (IOException e) { e.printStackTrace(); } return addresses; Código:
for(int i=0;i<addresses.size();i++){ Address address = (Address) addresses.get(i); LatLng latLng = new LatLng(address.getLatitude(), address.getLongitude()); } Última edición por kriogeN Día 25/04/13 a las 13:35:21. |
#6
|
||||
|
||||
entonces lo que he leído de overlay no tiene nada que ver?..puedo trabajar con el fragment y el geoposicionamiento?
muchas gracias de nuevo...me pongo en ello... EDITO por cierto.. .yo no estoy utilizando threads...deberia hacerlo? lo digo por lo de UI thread.. Última edición por solfree Día 25/04/13 a las 16:35:10. Razón: edito: .yo no estoy utilizando threads...deberia hacerlo? lo digo por lo de UI thread |
#7
|
||||
|
||||
Bueno kriogeN
nada más decirte que eres una máquina!...me funciona todo!! muchísimas gracias! Puedo preguntarte de dónde sacas toda esta info?.. llevas mucho con android? me recomiendas algún libro? ahora sólo me queda lo de marcar el camino entre dos puntos... si lo consigo lo posteo..he encontrado algo en stackoverflow...pero de momento no me aclaro! gracias de nuevo! |
#8
|
||||
|
||||
marcar el recorrido entre dos puntos, solucionado
hola de nuevo,
ya he encontrado como poner el recorrido entre dos o mas puntos os dejo el link por si alguien le interesa http://wptrafficanalyzer.in/blog/rou...ndroid-api-v2 saludos Quim |
Estás aquí | ||||||
|