【问题标题】:Can I read the 'real' mobile GPS coordinates from a website?我可以从网站上读取“真实”的移动 GPS 坐标吗?
【发布时间】:2012-04-16 18:12:19
【问题描述】:

我做了一个网站,我想在移动设备(Android 和 iPhone)上读取“真实”位置 GPS。 当我尝试使用W3C javascript 方法从我的Android 设置我的网站上的位置时,GPS 未启用并且位置由IP 设置(当我尝试使用Google Maps 应用程序时,GPS 已启用并在状态栏上闪烁)。 有什么方法可以从手机上的网络读取 GPS(真正的 GPS)? 提前致谢!

【问题讨论】:

    标签: javascript geolocation web w3c


    【解决方案1】:

    使用 HTML5,您可以做到这一点。您需要检查 Geolocation API:Dive Into HTML5W3C 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 所说的here例如,具有 GPS 的设备可能需要一分钟或更长时间才能获得 GPS 定位,因此可能会将不太准确的数据(IP 位置或 wifi)返回到 getCurrentPosition() 以启动。

    因此,如果您需要高精度(例如仅 GPS),请使用 watchPosition 而不是 getCurrentPosition

    【讨论】:

    • 感谢 gakhov,但是使用这种方法,手机没有使用真正的 GPS(不在状态栏上闪烁):O
    • 这很奇怪。手机启用了 GPS...手机在 3" 中找不到任何东西并询问分享我的位置...如果我承认知道位置,手机只需通过 GSM 设置位置,手机仍然通过 GPS 信号搜索。我需要手机不使用 GSM 三角测量 :( 这可能吗?提前谢谢!
    • 我发现了问题:) 只需在函数(位置)上使用 if(position.coords.accuracy
    【解决方案2】:

    如 W3C 规范中所述,您可能需要使用 watchPosition 和 getCurrentPosition 的第三个参数,即 PositionOptions interface 将 enableHighAccuracy 设置为 true,否则,使用其默认值 false,GPS 不一定由设备开启。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-21
      • 2018-11-29
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 2011-05-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多