2014-09-15 2 views
0

J'ai une application qui met en place deux auditeurs de localisation (un pour le GPS et un pour le réseau), puis choisit l'emplacement du meilleur disponible, qui devrait être GPS . Cependant, si le GPS est activé, il choisira toujours l'emplacement GPS, même si la personne démarre l'application à l'intérieur. Cela a conduit à l'utilisation de l'emplacement GPS même si le dernier emplacement GPS connu est à des kilomètres et que l'emplacement du réseau est en réalité beaucoup plus précis.L'emplacement GPS d'Android n'est pas aussi précis que l'emplacement du réseau

Y at-il un moyen de contourner ce problème ou est-ce juste quelque chose qui devra être accepté comme un problème avec l'utilisation du réseau GPS &? Est-ce que la pratique standard consiste simplement à supposer que le GPS est toujours plus précis même s'il est possible que ce ne soit pas dans certains cas?

Répondre

0

Si vous utilisez le fournisseur de réseau pour aller chercher l'emplacement, ils ne sont pas très précis par rapport au GPS. Donc, il peut être une bonne idée d'aller chercher la précision de votre position en utilisant le fournisseur de réseau lorsque vous êtes à l'intérieur car le GPS ne fonctionne pas bien à l'intérieur et vous pouvez utiliser le GPS pour obtenir les mises à jour lorsque vous êtes en plein air.

Vous pouvez utiliser la méthode GetAccuracy() de la classe Location et voir la valeur qu'elle renvoie. Soit Say si getAccuracy() rétrograde 25 alors vous pouvez laisser cette valeur attendre une autre valeur gps jusqu'à ce que vous obteniez la valeur désirée. Rappelez-vous que la valeur renvoyée est le rayon du cercle en mètres.

Questions connexes