Android: Obtener ubicación reciente solamente, no getLastKnownLocation?

Estoy desarrollando una aplicación de Android en la que la ubicación actual y precisa es la clave. Una vez detectada la corrección GPS, se mueve a la siguiente actividad.

El problema es que lo probé al aire libre y encontré que a veces sólo usa una ubicación de una revisión anterior.

Así que lo que estoy pidiendo; ¿Hay alguna otra lógica para obtener la ubicación de LocationManager que no sea por getLastKnownLocation? Todavía no he encontrado un ejemplo que no se vea como

Location location = locationManager.getLastKnownLocation(provider); 

¡Gracias!

Aquí está el código de ejemplo de la guía oficial (con pequeñas modificaciones):

 // Acquire a reference to the system Location Manager LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE); // Define a listener that responds to location updates LocationListener locationListener = new LocationListener() { public void onLocationChanged(Location location) { makeUseOfNewLocation(location); } public void onStatusChanged(String provider, int status, Bundle extras) {} public void onProviderEnabled(String provider) {} public void onProviderDisabled(String provider) {} }; // Register the listener with the Location Manager to receive location updates locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener); 

Aquí solo solicita actualizaciones desde el GPS, y tan pronto como se reciba la ubicación, obtendrá una llamada de devolución de llamada.

Puede usar LocationListener y luego llamar a locationManager.requestLocationUpdates() pasar su propia implementación de escuchas.

Google ha lanzado la nueva API de ubicación, compruebe este enlace en https://developer.android.com/training/location/index.html ,

Para que la pregunta, es necesario implementar la actualización de ubicación de devolución de llamada para obtener la ubicación actual. https://developer.android.com/training/location/receive-location-updates.html

  • Cómo obtener el nombre de satélite o el número cuando estamos recibiendo la ubicación a través de GPS en Android?
  • Obtener ubicación * gruesa * del proveedor de GPS en Android
  • La aplicación de Android no puede acceder a la ubicación en el emulador mediante FusedLocationApi
  • Intervalo requestLocationUpdates en Android
  • Obtención de la ubicación actual de un dispositivo mediante la función {X} api
  • Cómo obtener la ubicación GPS de Android
  • Android mejor manera de obtener la ubicación actual
  • Ubicación Actualización en función del estado del dispositivo
  • Android GeoCoder devuelve sólo 1 resultado
  • Donde el archivo .apk se coloca en el teléfono después de la instalación
  • Habilitar servicios de ubicación para Android si el usuario eligió la opción Nunca
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.