42 votes

À quoi font référence les expressions horizontalAccuracy et verticalAccuracy d'une CLLocation ?

J'ai travaillé récemment sur une application basée sur la localisation et j'ai remarqué certaines valeurs étranges pour CLLocation. J'obtiens souvent un horizontalAccuracy de 1414 et un verticalAccuracy de -1 . Une idée de ce que cela indique ? D'après ce que je sais, ces points sont souvent très précis. Quelle est la différence entre verticalAccuracy et horizontalAccuracy ?

70voto

progrmr Points 32412

Le -1 pour verticalAccuracy indique que l'altitude dans le CLLocation n'est pas valide. Vous n'obtenez l'altitude qu'avec une position GPS 3D.

Le 1414 pour horizontalAccuracy indique que la position horizontale (lat/lon) pourrait être décalée de 1414m (il s'agit d'une erreur estimée). Il s'agit probablement d'un emplacement déterminé par la triangulation d'une tour cellulaire ou par des données de localisation WiFi. Les positions GPS indiquent généralement 100 m ou mieux.

Pour obtenir une localisation plus précise (300 m ou plus), vous devez définir les paramètres suivants desiredAccuracy et attendez que le récepteur GPS se verrouille sur au moins 3 satellites (ou 4 pour une position 3D). Jusqu'à ce que cela se produise CLLocationManager vous donnera ce qu'il a de mieux, à savoir les résultats de la triangulation des tours de téléphonie mobile ou du WiFi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X