Chromeは私の位置を検出するのに非常に正確なようです。それはどのようにそれをしますか?ソースコードを教えてもらえますか?
ジオロケーションは、以下に基づいて計算できます。
W3C Geolocaton API および Google Gears API (Chromeの/ W3C Geolocation APIのベース)を参照してください。
Chromiumのジオロケーションソースコード オンラインで表示できます。
現在地は、デバイスで利用可能なさまざまなサービスとハードウェアを使用して取得できます。最も一般的なものは次のとおりです。GPS、wifi情報、セルタワー。または、IPルックアップもありますが、これはあまり正確ではなく、デバイスに特別なことは何も含まれていません。
あなたの場合、あなたのwifiネットワークに関する情報が使用された可能性が最も高いです。 GPSとWifiを搭載した車(Googleストリートビュー車など)によって作成された、wifiネットワークを場所に接続する巨大なデータベースがあります。コンピューターからサーバーへの送信は、HTML5の一部である W3C Geolocation API Specs に従って行われます。
このためのChromeソース? ここ は開始点のエントリポイントです。または、昔ながらのファイルブラウザを好む場合: http://src.chromium.org/svn/trunk/src/chrome/browser/geolocation/
Wi-Fi経由のローカリゼーション用の実装ファイル:
彼らはいくつかのことを調べます:->あなたの場所と信号強度でのワイヤレスネットワークの一意の識別子(SSID)。 -> IPアドレス(パブリックIPアドレス)-> GPS(利用可能な場合)->モバイルネットワークの位置データ(利用可能な場合)
pCのブラウザにはgpsはありませんが、外部IPアドレス(通常はルーターの外部IPアドレス)があります。同じルーターの背後にある他のコンポーネントにgpsがある場合、これは場所をそのIPアドレスに固定し、位置情報サービスを介してこの場所をブラウザーに接続します。