代码之家  ›  专栏  ›  技术社区  ›  Ben

移动GPS web应用程序

  •  5
  • Ben  · 技术社区  · 15 年前

    我知道PHP,但我对GPS部分完全一无所知(以前从未与他们合作过)。我在找的就是headsup,看看我能不能胜任这份工作,或者干脆拒绝它。

    我听说w3geolocationapi做得很好,但是在测试之后,我不相信它的准确性和浏览器支持。我不想使用Google的gears,因为它必须先下载。

    4 回复  |  直到 15 年前
        1
  •  2
  •   npdoty    15 年前

    我确实认为 W3C Geolocation API 这是一个很好的起点:它在移动电话上的接受度越来越高,是一个开放的标准,并且抽象了所有特定于设备的api。

    确实,准确度可能并不完美,但那是因为手机本身可能并不总是完全知道它在哪里。API为您提供了两种方法来解决这个问题:如果您需要高精度,您可以向设备提示,您需要一个准确的结果,即使是以功耗/时间为代价 enableHighAccuracy timeout 参数,允许设备使用GPS查找位置。此外,所有位置都会返回一个95%置信度的准确度值——如果错误太高(通常手机会在第一次请求时返回一个高错误),您可以再次请求位置,指定不需要缓存位置。

        2
  •  1
  •   Kieran Andrews    15 年前

    这取决于设备,但一些移动应用程序框架已经为您完成了所有的工作,并且有扩展来完成这项工作,请查看iPhone的jqTouch:

    http://jqtouch.com/

    更具体地说:

    http://code.google.com/p/jqtouch/wiki/Extensions

        3
  •  1
  •   rgubby    15 年前

    GPS坐标可与javascript一起使用-在页面加载中放置类似的内容:

    function locationHandler(location)
    {
        var lat = location.coords.latitude;
        var lng = location.coords.longitude;
    
        if(lat && lng)
        {
            // something clever goes in here
        }
    }
    
    if(typeof navigator.geolocation.getCurrentPosition == 'function')
    {
        navigator.geolocation.getCurrentPosition(locationHandler);
    }
    

    把它和谷歌的反向地理编码联系起来,你就是赢家了!!

        4
  •  0
  •   Jason McCreary    15 年前

    根据移动设备的不同,您可以使用GPS。然而,在广泛的移动频谱中,你可能无法可靠地从设备的浏览器单独获得它。考虑到蜂窝网络的结构,读取IP是徒劳的。

    这是可以做到的,但你需要建立在降级级别。

    推荐文章