2011-11-30 13 views
12

Estoy diseñando una aplicación donde la aplicación en el lado del servidor necesita estar continuamente al tanto de la ubicación del usuario. Estoy pensando en crear un servicio Android que se ejecute en segundo plano y consultar continuamente la ubicación del usuario y enviar el resultado a una aplicación en el servidor back-end. Sin embargo, me pregunto si este es el mejor enfoque en términos de ahorro de batería. Por ejemplo, en iOS, hay algo llamado "Cambio Significativo" para tal fin, ¿tiene Android algo similar?Mejores prácticas para informar la ubicación del usuario continuamente

+0

en iOS, esta "importante cambio" no es lo que podría pensar. un cambio significativo puede ocurrir mientras el dispositivo está cambiando entre torres de celdas, y no ocurre realmente después de un cambio cada 'x' de distancia. Al usar esta función de 'cambio significativo', recibirá actualizaciones de ubicación no lo suficientemente frecuentes para uso práctico (a menos que desee rastrear solo algunas ubicaciones) – binnyb

Respuesta

15

Sugiero crear un servicio de fondo que solo usa el NETWORK_PROVIDER y el PASSIVE_PROVIDER. Puede usar el minTime y el parámetro minDistance para evitar el drenaje de la batería. Documentation

y Reto escribió un gran post sobre la obtención de ubicación de los usuarios http://android-developers.blogspot.com/2011/06/deep-dive-into-location.html

En cuanto a su comentario que tiene que comenzar su servicio adosado: Documentation

+0

Gracias ... en este caso, ¿cómo puedo asegurarme de que el sistema no matar a mi servicio, o al menos, ¿cómo podría saber si el servicio se mata para que pueda ejecutarlo de nuevo? – user836026

+0

respuesta editada :) –

+0

@DominicBartl Sería interesante lo que piensas sobre la opción propuesta aquí: http://stackoverflow.com/questions/18260531/how-to-continuously-track-the-location-of-an-android -teléfono móvil –

Cuestiones relacionadas