J'essaie d'enregistrer des points de repère pour localiser des éléments dans des zones ouvertes. L'idéal serait d'utiliser une application comme GPS Waypoints, où les points de repère peuvent être répertoriés et exportés. Cependant, j'ai fait quelques tests et il semble que Google Maps soit plus précis. Est-ce parce qu'il associe votre position à des éléments de la carte (par exemple, une route) ? Utilise-t-il les données de localisation plus efficacement que d'autres applications (en intégrant les signaux wifi, etc.) ? Ou bien la localisation est-elle calculée par le système d'exploitation (Android), et toutes les applications l'utilisent simplement (ce qui signifie que toutes les applications devraient avoir la même précision) ? Merci !
Réponse
Trop de publicités?Android définit des interfaces pour interagir avec ses sources de localisation. Les informations de localisation renvoyées seront les mêmes pour toutes les applications.
- GPS - Votre téléphone se localise grâce à une constellation de satellites. Cette opération peut être effectuée sans connexion de données, mais elle utilise généralement une connexion de données pour faciliter et réduire le délai de la première localisation.
- WiFi/Bluetooth - Votre téléphone recherche les émetteurs et envoie la liste dans une demande de localisation à Google.
- Cellulaire - Votre téléphone recherche les tours (émetteurs) et envoie la liste dans une demande de localisation à Google.
La manière dont une application choisit d'utiliser les informations de localisation peut être différente, comme dans votre exemple de snapping. En général, on utilise la meilleure source de précision actuellement disponible, qui commence par le WiFi puis passe au GPS. Mais une application peut choisir d'ignorer le WiFi et d'utiliser uniquement le GPS, par exemple.
Si vous essayez de cartographier des emplacements dans des zones ouvertes, l'heuristique d'application comme votre exemple d'accrochage n'est d'aucune utilité ; toute application avec GPS qui enregistre les coordonnées devrait être parfaite.
0 votes
Si j'ai bien compris, le calcul de votre position est la tâche d'un processus appelé "LocationProvider" - et toutes les applications devraient obtenir les mêmes résultats.
0 votes
Combinez cela avec les détails donnés dans Réponse de mattm et vous voudrez peut-être accepter cette réponse. Le "LocationProvider" est l'intermédiaire qui choisit parmi les sources disponibles énumérées dans la réponse, en fonction de la précision demandée par l'application et des paramètres correspondants de votre système.