Saltar al contenido

Cómo obtener la ubicación actual en Android

Iván, parte de este staff, nos ha hecho el favor de crear esta crónica ya que controla perfectamente este tema.

Solución:

Primero debe definir un LocationListener para manejar los cambios de ubicación.

private final LocationListener mLocationListener = new LocationListener() 
    @Override
    public void onLocationChanged(final Location location) 
        //your code here
    
;

Entonces consigue el LocationManager y solicitar actualizaciones de ubicación

@Override
protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);

    mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE);

    mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, LOCATION_REFRESH_TIME,
            LOCATION_REFRESH_DISTANCE, mLocationListener);

Y finalmente, asegúrese de haber agregado el permiso en el Manifiesto,

Para usar solo la ubicación basada en la red, use esta


Para la ubicación basada en GPS, este


Necesitas escribir código en el EnUbicaciónCambiada método, porque este método se llama cuando la ubicación ha cambiado. Es decir, debe guardar la nueva ubicación para devolverla si se llama a getLocation.

Si no usas el enUbicaciónCambiada siempre será la antigua ubicación.

Estoy usando este tutorial y funciona muy bien para mi aplicación.

En mi actividad pongo este código:

GPSTracker tracker = new GPSTracker(this);
    if (!tracker.canGetLocation()) 
        tracker.showSettingsAlert();
     else 
        latitude = tracker.getLatitude();
        longitude = tracker.getLongitude();
    

también verifique si su emulador se ejecuta con la API de Google

Recuerda que puedes mostrar esta reseña si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.