2012-04-22 8 views
5

Estoy tratando de obtener la hora del GPS para una ubicación usando location.getTime en un oyente de ubicación usando GPS_PROVIDER en mis requestLocationUpdates. Esperaba que el tiempo previsto fuera el tiempo del reloj GPS, con precisión de milmillonésimas de segundo, pero redondeado al milisegundo. Lo que obtengo depende de la plataforma, pero ciertamente no parece ser lo que estoy esperando.
En SGS 11 - Android 2.3.3, el valor devuelto es siempre un segundo exacto, con la porción de milisegundos siempre .000. Según mi experiencia con los GPS, me parece poco probable que todas las encuestas del GPS ocurran exactamente en todo el segundo intervalo.
En un HTC-A7275 Android 2.3.3 - Estoy obteniendo la hora del sistema del teléfono, sin duda no es la hora del GPS.
Confirmé estos resultados al interferir con el tiempo del teléfono y examinar el tiempo de ubicación.
Las marcas de tiempo en las frases NMEA en el SGS 11 se proporcionan a 3 decimales de segundo, pero en el HTC, todas son xxx.0. El problema al usar NMEA es que es realmente complicado obtener la fecha y la hora y la posición completa de MNEA: solo en la oración GPGGA tiene altitud, pero no tiene fecha, por lo que es complicado alrededor de la medianoche UTC.
Estoy buscando tiempos precisos, preferiblemente hasta el milisegundo para mi registrador de seguimiento, para poder comparar pistas de diferentes jugadores de manera confiable. ¿Alguien ha hecho más trabajo en esto?
Cómo obtener las marcas de tiempo precisas desde la ubicación de Android GPS

Respuesta

1

unidades Caro GPS utilizan protocolos "de impulsos por segundo" para lograr una precisión inferior al milisegundo, sin embargo no he oído hablar de este protocolo o interfaz disponible en los receptores GPS baratos que tenemos en nuestros teléfonos. Por lo tanto, la mejor precisión que puede lograr con los mensajes GPS está dentro de un rango de 1 a 2 segundos.

Re: NTP en Android, es una solución mucho mejor, pero es poco probable que alcance la precisión del reloj más allá de 50-100ms en redes inalámbricas contemporáneas.

+0

Estoy experimentando el mismo problema con la hora del GPS. Después de obtener la primera solución, los tiempos son los siguientes: 1379708393916, 1379708394803, 1379708395803 y así sucesivamente, hasta que el tiempo comience a redondearse al segundo - 1379708405000, 1379708406000, 1379708407000. ¿No está seguro de por qué? ¿Alguien sabe por qué esto es así? Lo he intentado con una antena activa y una pasiva. – Sarvavyapi

Cuestiones relacionadas