studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones android geolocation gps location

para - manual de programacion android pdf



Usa el GPS y el proveedor de red al mismo tiempo en Android (2)

Idealmente, si no está preocupado por el uso de la batería, entonces está perfectamente bien usar ambos proveedores. Como explicó Daren, puedes filtrar las coordenadas usando getProvider () y getAccuracy ().

http://blog.shinetech.com/2011/10/14/a-good-look-at-android-location-data/

Implementé un oyente de ubicación en mi aplicación que utiliza el Proveedor de red.

Todo esto funciona bien porque quiero una ubicación de forma rápida y con el Proveedor de GPS lleva años.

Pero llegué a un punto en mi aplicación donde la ubicación debe ser precisa (máximo 5-10 metros).

Me preguntaba si es posible usar el proveedor de GPS con el proveedor de red al mismo tiempo y luego obtener el mejor resultado de ambos. ¿Y también es posible avisarme cuando el proveedor de GPS me proporcionó una ubicación GPS?

Así que básicamente:

LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, this); lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);

¿Funcionará esto con el mismo reemplazado onLocationChanged ()?

¿Y cómo puedo ver si el GPS obtuvo una ubicación?

Gracias,


Ciertamente puede usar el mismo oyente para múltiples proveedores. Puede ser mejor usar locationmanager.getProviders con un objeto Criteria luego ordenar por precisión o simplemente escucharlos a todos. Sin embargo, no hay mucha diferencia práctica.

La onLocationChanged llamada onLocationChanged le proporciona un objeto Location, que tiene un método getProvider() que puede usar para determinar de dónde proviene. También tiene un método getAccuracy() , por lo que también puede ordenar las correcciones recientes por precisión.