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.
- Google maps containsLocation en android
- LocationRequest desplazamiento más pequeño y precisión
- Cómo encontrar el código postal por latitud y logitud para el Reino Unido
- Problemas con android.location.geocoder
- Android getLatitude () devuelve latitud geodésica o geocéntrica?
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!
- Buena forma de obtener la ubicación del usuario en Android
- Proveedores de ubicación de Android - ¿Proveedor de GPS o de red?
- Android O - Old empezar el servicio de primer plano sigue funcionando?
- RuntimeException en el análisis de Gson JSON: Error al invocar java.lang.ClassLoader protegido () sin args
- MSecurityInputMethodService es nulo en logcat
- ¿Cómo encontrar mi ubicación actual (latitute + longitude) al hacer clic en un botón en android?
- Permisos de aplicaciones en Android Marshmallow en PhoneGap
- Actualizaciones de ubicación que no funcionan en interiores como lo reclaman las API del proveedor de ubicaciones de Fusion
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 implementar anuncios nativos express en Listview con CursorAdapter
- Recibir y validar certificado del servidor HTTPS – android