una ubicacion privacidad link google family encontrar eliminar dispositivo desinstalar desactivar cuenta como cambiar ayuda aplicaciones android google-maps geolocation

ubicacion - Obtención del nombre de la calle del objeto Dirección/Ubicación en Android



family link ayuda (6)

Estoy tratando de obtener el nombre de la calle de mi ubicación actual, pero parece que no puedo obtenerlo.

Yo uso este método para recuperar la dirección:

public Address getAddressForLocation(Context context, Location location) throws IOException { if (location == null) { return null; } double latitude = location.getLatitude(); double longitude = location.getLongitude(); int maxResults = 1; Geocoder gc = new Geocoder(context, Locale.getDefault()); List<Address> addresses = gc.getFromLocation(latitude, longitude, maxResults); if (addresses.size() == 1) { return addresses.get(0); } else { return null; } }

Y luego puedo hacer cosas como. address.getLocality() y address.getPostalCode()

Pero lo que quiero es el nombre de la calle. Como en "Potterstreet 12". Cuando imprimo AddressLine (0) y AddressLine (1) solo obtengo el código postal, la ciudad y el país.

¿Cómo puedo recuperar el nombre de la calle de la posición en la que estoy actualmente?


¿Has intentado usar getAddressLine ? Vea here para más información sobre este método

Algo como esto debería hacer (no probado):

for (int i = 0; i < addresses.getMaxAddressLineIndex(); i++) { Log.d("=Adress=",addresses.getAddressLine(i)); }


Intenta algo como esto en tu código

String cityName=null; Geocoder gcd = new Geocoder(getBaseContext(),Locale.getDefault()); List<Address> addresses; try { addresses = gcd.getFromLocation(location.getLatitude(), location .getLongitude(), 1); if (addresses.size() > 0) StreetName=addresses.get(0).getThoroughfare(); String s = longitude+"/n"+latitude + "/n/nMy Currrent Street is: "+StreetName; Toast.makeText(getApplicationContext(), s, Toast.LENGTH_LONG).show();

funciona para mí :-) buena suerte ;-)


Si tienes una dirección completa (ciudad + calle), en

address.getAddressLine(0)

Usted encuentra el nombre de la calle y el número.


Tuve un problema muy similar pero con el nombre del país, esta es la función que terminé usando:

function getCountry(results) { var geocoderAddressComponent,addressComponentTypes,address; for (var i in results) { geocoderAddressComponent = results[i].address_components; for (var j in geocoderAddressComponent) { address = geocoderAddressComponent[j]; addressComponentTypes = geocoderAddressComponent[j].types; for (var k in addressComponentTypes) { if (addressComponentTypes[k] == ''country'') { return address.long_name; } } } } return ''Unknown''; }

Debes poder adaptar esto para que el nombre de la calle salga sin mucho problema.

Inspirado por esta respuesta.


getFromLocation tampoco estaba funcionando para mí. Hay un par de pasos que puede tomar.

1. En primer lugar, vaya a Gradle y asegúrese de estar usando la última versión de servicios de juego.

2. No sobre especificar, la razón por la que no obtuve resultados es porque tenía mucha información en mi dirección. Cuando quité el código postal obtuve resultados cada vez.

3. Pruebe la API en línea: http://maps.google.com/maps/api/geocode/json?address=192%20McEwan%20Dr%20E,%20Caledon,%20ON&sensor=false Simplemente reemplace la dirección allí con la suya. .

Buena suerte


Geocoder gcd = new Geocoder(this, Locale.getDefault()); List<Address> addresses = gcd.getFromLocation(currentLatitude, currentLongitude,100); if (addresses.size() > 0 && addresses != null) { StringBuilder result = new StringBuilder(); myaddress.setText(addresses.get(0).getFeatureName()+"-"+addresses.get(0).getLocality()+"-"+addresses.get(0).getAdminArea()+"-"+addresses.get(0).getCountryName()); }

  • getfeaturename () return Streetname
  • getlocality () ciudad de retorno
  • getadminarea () return Estado

Eso es todo..!