Obtener el nombre de la ubicación de las coordenadas obtenidas
Lo que tengo: actualmente mi aplicación solo me dice las coordenadas de mi ubicación actual.
Lo que quiero: Obtener el nombre de la ubicación de las coordenadas obtenidas por gps, para que yo pueda saber dónde exactamente estoy. (Nombre del lugar)
- Uso de GoogleApiClient + LocationServices sin actualizar
- Servicios de Google Play para Android. Localización cliente no actualización ubicación si wifi deshabilitado
- Clase de actividad principal no encontrada si implementa GooglePlayServicesClient.ConnectionCallbacks / OnConnectionFailedListener
- ¿Es posible saber mi ubicación vino de gps o glonass?
- Obtener usuario actual Ubicación android
- Compruebe si la geolocalización ha sido falsificada
- Android simulacro de ubicación en el dispositivo?
- ¿Cómo cambio entre el GPS y el proveedor de la red?
- La importación com.google.android.gms.location.LocationClient no se puede resolver
- ¿Cómo medir la fuerza de la señal GPS en Android?
- LocationManager y LocationClient juntos para obtener la ubicación del usuario
- LocationServices.FusedLocationApi.removeLocationUpdates (mGoogleApiClient, este); Intenta emitir como com.google.android.gms.location.LocationListener)
- Obtener la lista de lugares que rodean la ubicación actual del usuario
Aquí está el código completo de buscar largo – lat a conseguir la dirección:
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); String provider = locationManager.getBestProvider(new Criteria(), true); Location locations = locationManager.getLastKnownLocation(provider); List<String> providerList = locationManager.getAllProviders(); if(null!=locations && null!=providerList && providerList.size()>0){ double longitude = locations.getLongitude(); double latitude = locations.getLatitude(); Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.getDefault()); try { List<Address> listAddresses = geocoder.getFromLocation(latitude, longitude, 1); if(null!=listAddresses&&listAddresses.size()>0){ String _Location = listAddresses.get(0).getAddressLine(0); } } catch (IOException e) { e.printStackTrace(); } }
Usted puede nosotros el GeoCoder
que está disponible en android.location. Paquete Geocoder
. El JavaDocs da u explicación completa. La muestra posible para u.
List<Address> list = geoCoder.getFromLocation(location .getLatitude(), location.getLongitude(), 1); if (list != null & list.size() > 0) { Address address = list.get(0); result = address.getLocality(); return result;
El result
devolverá el nombre de la ubicación.
Aquí me dan un solo pase la latitud y la longitud en esta función entonces usted consiguió toda la información relacionada con esta latitud y longitud.
public void getAddress(double lat, double lng) { Geocoder geocoder = new Geocoder(HomeActivity.mContext, Locale.getDefault()); try { List<Address> addresses = geocoder.getFromLocation(lat, lng, 1); Address obj = addresses.get(0); String add = obj.getAddressLine(0); GUIStatics.currentAddress = obj.getSubAdminArea() + "," + obj.getAdminArea(); GUIStatics.latitude = obj.getLatitude(); GUIStatics.longitude = obj.getLongitude(); GUIStatics.currentCity= obj.getSubAdminArea(); GUIStatics.currentState= obj.getAdminArea(); add = add + "\n" + obj.getCountryName(); add = add + "\n" + obj.getCountryCode(); add = add + "\n" + obj.getAdminArea(); add = add + "\n" + obj.getPostalCode(); add = add + "\n" + obj.getSubAdminArea(); add = add + "\n" + obj.getLocality(); add = add + "\n" + obj.getSubThoroughfare(); Log.v("IGA", "Address" + add); // Toast.makeText(this, "Address=>" + add, // Toast.LENGTH_SHORT).show(); // TennisAppActivity.showDialog(add); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show(); } }
Espero que usted obtenga la solución a su respuesta.
- ¿Cómo obtengo una copia del icono del menú de desbordamiento de Android?
- Cómo obtener / detectar el tamaño de la pantalla en Xamarin.Forms?