6

私はウェブサイトを作成しましたが、モバイル (Android & iPhone) で「実際の」位置 GPS を読みたいと思っています。W3C JavaScript メソッドを使用して Android から Web サイトの場所を設定しようとすると、GPS が有効にならず、位置が IP によって設定されます (Google マップ アプリを使用すると、GPS が有効になり、ステータス バーが点滅します)。モバイルの Web から GPS (実際の G​​PS) を読み取る方法はありますか? 前もって感謝します!

4

2 に答える 2

7

HTML5 ではそれが可能です。Geolocation API を確認する必要があります: Dive Into HTML5 and W3C Geolocation API Specification

最も単純な例は次のようになります。

if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition( 
        function (position) {  
            do_something(position.coords.latitude,position.coords.longitude);
        }, 
        function (error){
            switch(error.code){
                case error.TIMEOUT:
                    // Timeout
                    break;
                case error.POSITION_UNAVAILABLE:
                    // Position unavailable
                    break;
                case error.PERMISSION_DENIED:
                    // Permission denied
                    break;
                case error.UNKNOWN_ERROR:
                    // Unknown error
                    break;
                default: break;
           }
        }
    );
}

おそらく、いくつかのブラウザー固有の実装にも興味があるでしょう: MozillaIEChrome

更新しました。 Mozilla がここで述べたように、たとえば、GPS を備えたデバイスは、GPS 修正を取得するのに 1 分以上かかることがあるため、精度の低いデータ (IP ロケーションまたは Wi-Fi) が getCurrentPosition() に返されて開始される場合があります。

そのため、(GPS のみのように) 高い精度が必要な場合は、watchPosition代わりに を使用してgetCurrentPositionください。

于 2012-04-16T18:19:38.047 に答える