PWA 应用程序上用户的 GPS 位置和海拔高度

ada*_*ian 1 javascript api progressive-web-apps

我知道我们能够提示用户通过浏览器跟踪他们的 GPS 位置。但是,我正在尝试处理建筑物中的多个楼层。如何收集 GPS 位置的海拔高度。截至目前,我只能跟踪纬度和经度?

ter*_*rse 5

地理位置数据确实包含属性coords.altitudecoords.altitudeAccuracy。至少在 iOS 中是这样。

我刚刚在装有 Safari (iOS 14.3) 的 iPhone 上的 Web Inspector 控制台中运行了此命令:

navigator.geolocation.getCurrentPosition((pos) => console.log(pos))
Run Code Online (Sandbox Code Playgroud)

结果:

GeolocationPosition
  coords: GeolocationCoordinates
    accuracy: 13.6...
    altitude: 5.68...
    altitudeAccuracy: 23.7...
    floorLevel: null
    heading: null
    latitude: 37.42...
    longitude: -122.1...
    speed: 0
    timestamp: 1609...
Run Code Online (Sandbox Code Playgroud)

altitudeAccuracy值很差,这对于 GPS 测量来说是有意义的。使用 GPS 时高度总是不准确。

这是GeolocationCoords 上的 MDN 页面,其中列出了属性altitudealtitudeAccuracy

还有一个关于室内定位系统的有趣 wiki 页面。他们使用多种非 GPS 技术来检测设备所在的楼层。