Medición de la velocidad a través de iPhone SDK

Necesito implementar una aplicación nativa de iPhone para medir la velocidad del teléfono (básicamente un velocímetro). Sé que puede hacerlo a través de la API CoreLocation con bastante facilidad, pero me preocupa el consumo de la batería, ya que se trata de una medición en tiempo real que se puede utilizar durante un par de horas a la vez. Tengo entendido que, si bien estás monitoreando activamente los eventos desde el LocationManager (aunque en realidad no me importa la ubicación del GPS), consume mucha batería.

La otra opción obvia para explorar sería usar los acelerómetros para intentar calcular la velocidad, pero no hay nada en la API que lo ayude a hacerlo. Según mi investigación, debería ser posible hacer esto, pero parece extremadamente complicado y propenso a errores. Para comenzar, la conversión de la aceleración a la velocidad puede ser difícil, además los datos del acelerómetro del iPhone pueden ser "ruidosos". Estoy familiarizado con el ejemplo de SDK que demuestra el uso de filtrado de paso alto / bajo, etc., pero no he visto un buen ejemplo en ninguna parte que muestre el cálculo de la velocidad.

¿Alguien tiene alguna experiencia del mundo real con esto que puedan compartir? El código sería fantástico, pero en realidad solo quiero saber si alguien lo ha hecho con éxito (para una aplicación de larga duración) y qué enfoque adoptaron.

EDITAR: Tengo un prototipo funcional que utiliza la API de LocationManager. Funciona bien, pero el ciclo de actualización dista mucho de ser ideal para una medición en tiempo real de la velocidad. Dependiendo de las circunstancias, la actualización puede demorar hasta 4-5 segundos. El crucero a una velocidad dada tiende a funcionar bien, pero la aceleración / desaceleración tiende a demorarse mucho desde el punto de vista de la interacción del usuario. Además, necesito introducir la velocidad en algunos otros cálculos que estoy haciendo y la precisión no es realmente lo que necesito.

Parece posible basado en (muy pocas) otras aplicaciones que he visto, en particulargMeter que afirma no hacer uso del GPS pero calcula la velocidad con precisión. Estoy realmente sorprendido de que no haya referencias o ningún código de muestra que demuestre esto en cualquier lugar que pueda encontrar. Me doy cuenta de que es complejo, pero seguramente hay algo ahí fuera.

Respuestas a la pregunta(5)

Su respuesta a la pregunta