Comment fonctionne FasterGPS ?

Les informations suivante sont tirées de Stackoverflow (Licence : CC BY-SA 3.0) :

Comme le montre le code source de la classe LocationProvider, il semble que l'heure est récupérée au démarrage depuis un serveur NTP et « injectée » dans les calculs. Autant que je sache, chaque satellite GPS possède une horloge atomique très précise et tous sont synchronisés sur le « temps GPS ». Une fois que le récepteur a identifié 4 satellites ou plus, il résout (par quelque méthode) une équation à 4 inconnues : x,y,z,b; où (x,y,z) est l'emplacement du récepteur, et b est la différence de temps entre l'horloge interne du récepteur et le temps (correct) GPS. Une fois qu'elle a un verrouillage, l'horloge du récepteur est synchronisée avec l'heure correcte.

Le signal NTP n'est pas utilisé directement pour obtenir un verrouillage GPS. Pour un verrouillage précis, il vous faut des horloges très précises. Il est question ici de nanosecondes. Les satellites GPS transmettent le temps GPS actuel mais même s'il est transmis à la vitesse de la lumière, il y a un certain délai. Le récepteur GPS n'a aucun moyen de savoir quel est ce délai, donc il doit faire une approximation grâce à plusieurs signaux reçus. À chaque transmission reçu, l'horloge devient plus précise. Donc plus précise est l'heure que vous avez au début, moins vous aurez besoin de recevoir de signaux horaires pour avoir une horloge précise.

Qui gère ces serveurs NTP ?

Les serveurs NTP sont gérés par le projet pool.ntp.org qui est une grosse grappe virtuel de serveurs de temps.

Pourquoi la liste contient des pays comme la Yougoslavie ?

La liste ne représente pas les régions politiques actuelles car cela briserait les configurations existantes qui utilisent les serveurs NTP du projet pool.ntp.org.
C'est plutôt une liste de régions géographiques.

Aider à traduire/ rapporter des bogues

Aller à http://sufficientlysecure.org/android-apps pour plus d'informations.