Ma semaine au VMworld se finissant, je ne voulais pas partir de Copenhague sans faire quelques photos. En planifiant mon itinéraire sur Google Maps hier soir, Firefox me demande si je souhaite partager ma localisation. Je valide machinalement (pas bien !), et là quelle surprise : Google Maps repère ma localisation à moins de 10 mètres près !

Certains se diront que c’est disponible depuis 2009 sur les mobiles : sauf que là, j’étais sur mon pc portable, connecté via câble, sans puce GPS, ni carte GSM.

WTF !?

Géolocalisation sur Google Maps, sans GPS ni puce GSM : avec HTML5

Géolocalisation de mon PC portable sur Google Maps : sans GPS ni puce GSM

Il est possible de repérer approximativement la localisation via l’adresse IP de connexion, mais ça reste relativement sommaire (un rayon de plusieurs centaines de mètres, voire plusieurs kilomètres).

J’ai eu l’explication sur Twitter. Sur la page « Using Location Sharing » de Chrome, on retrouve ce paragraphe :

[...] the browser will send local network information to Google Location Services to get an estimate of your location. The browser can then share your location with the requesting site. The local network information used by Google Location Services to estimate your location includes information about visible Wi-Fi access points, including their signal strength; information about your local router; your computer’s IP address. [...]

Google Chrome saves your location information, so that it can be retrieved easily. This information is periodically updated; the frequency of updates depends on changes to your local network information. [...]

En gros, Google maintient une base de données de toutes les connexions (j’imagine mobiles et fixes). Plutôt intelligent, même si la réalisation technique et le rendu dans un SIG doit être assez complexe ! Certains diront aussi que c’est un « flicage » de plus, et que les données pourraient être utilisées à mauvais escient…

Enfin, ce sont les nouvelles fonctionnalités d’HTML5 qui permettent l’intégration dans nos navigateurs. Sur HTML5 Demo, on peut trouver un exemple de code permettant de faire cette localisation.

Partager sa localisation sur Google Chrome (HTML5)

Partager sa localisation sur Google Chrome

 

Partager sa localisation sur Firefox (HTML5)

Partager sa localisation sur Firefox

J’ai testé la localisation dans 2 endroits différents, c’était très précis ! D’un autre coté, je pense que dans une capitale européenne, la base de données doit être assez complète. :)

Merci à ceux qui ont bien voulu me répondre sur Twitter : @jBleuzen, @raphael, @gamaniak, et @r_cambien !