IEだけ位置情報の値が違う!ChromeとFireFoxは同じなのに!

Geolocation APIを使い、navigator.geolocation.getCurrentPositionを実行してるみと、ChromeとFireFoxは同じ緯度経度で位置を取得できましたが、IEは緯度経度の値が違いました。 原因を調べてみたところ、Internet ExplorerはGoogle location databaseを使っていないっぽい?

GPS以外での位置情報取得

Geolocation APIで位置情報を取得する際には、GPSが一番精度が高い位置取得方法です。 しかしGPS機能がない端末の場合は、無線LAN・WiFi・携帯電話基地局・IPアドレスなどから大まかな位置情報を取得します。 そのため、パソコンのブラウザで位置情報を取得しようとした場合は、接続環境によって取得する方法が変わることになります。

しかし、同一のパソコン、同一の接続環境で、Chrome, FireFox, Internet Explorerの各ブラウザで位置情報を取得してみると、ChromeとFireFoxは緯度経度の値が同じでしたが、IEだけは別の値を取得していました。 ネットで色々と調べてみた結果、Internet ExplorerはChrome, FireFoxとは別のロケーションサービスを使っているらしいです。

Microsoft Location ServiceはGoogle location Serviceよりも精度が悪い?

以下のサイトの情報がヒットしました。

Google and FF work because they use the Google location database for geolocation information. IE9 uses the Microsoft Location database. The MS data is vastly inferior and appears to be a stale IP lookup and nothing more. We're seeking a workaround for IE9 users that provides the same excellent results as Chrome and FF.

引用元: Geolocation wrong in IE9 but not other browsers

英語は得意ではなないので自信はありませんが、「ChromeとFireFoxはGoogle location databaseを使って位置情報を取得しているが、IE9はMicrosoft Location databaseを使用している」 しかも「Microsoft Location databaseはGoogle location databaseと比べると精度が悪い」ということが書かれていますね。 たぶん。

他の記事でも、Internet ExplorerはMicrosoft Location Serviceを使っているという内容の記事がありました。

If you allow, Internet Explorer will approximate your location with the help of the Microsoft Location Service and works without the need for additional hardware. Given an IP address or a list of nearby WiFi hotspots, it can approximate your physical location using a database of IP addresses and a database of known hotspot locations.

引用元: W3C Geolocation API in IE9

「Internet ExplorerはMicrosoft Location Serviceを使ってIPアドレスやWiFiから位置情報を取得するよ」的な内容ですね。 たぶん。

Internet ExplorerはMicrosoft Location Serviceというロケーションサービスを使っていることは確かなようです。 Chrome, FireFoxと緯度経度の値が違った理由は、別のロケーションサービスを使っているから、ということで確定でしょう。 どの程度の誤差があるのかまでは調べきれていませんが、そもそも精度が悪いという評価をされているMicrosoft Location Serviceですので、Internet Explorerで現在値検索をすること自体が無理な話なのでは?

そもそも、GPS以外で位置情報を取得しても、わりと大雑把な情報しか取れませんからね。 パソコンで位置情報を取得するということ自体が、あまり精度がよくないということ前提にしているわけですから、Internet Explorerでの位置情報がメチャ大雑把ということは目を瞑ってあげましょうか。

人気記事すべて表示

WEBすべて表示