无需网络连接即可定位

问题描述 投票:0回答:3

我正在编写一个现场服务 HTML5 应用程序,该应用程序在装有 GPS 芯片的 Windows 笔记本电脑上的 Google Chrome Web 浏览器上运行。我正在使用 html5 geolocation api 来获取用户的位置。只要用户有 IP 地址(无论是来自 WiFi 还是有线网络连接),这种方法就可以正常工作。

但是,当笔记本电脑没有网络连接时,即使笔记本电脑有 GPS 芯片,地理定位也会失败。我担心浏览器不够智能,无法使用GPS芯片,而是总是想调用Google的网络地理定位服务,如果没有网络,该服务就会失败。有谁知道是这样吗?

有没有办法让 Google Chrome 地理定位在有 GPS 芯片但没有网络连接的笔记本电脑上工作?看起来很愚蠢,它不起作用!

html google-chrome geolocation
3个回答
2
投票

虽然不理想,但您可以使用第 3 方桌面应用程序将位置数据写入磁盘上的文件。如果文件写入 Web 文件夹,则可以使用 javascript 读取该文件。 Windows GPS 登录软件:http://gpsgate.com/support/nmea_logger


0
投票

您是否尝试过将enableHighAccuracy属性设置为true?

navigator.geolocation.getCurrentPosition(
     processGeolocation,
     // Optional settings below
     geolocationError,
     {
         timeout: 0,
         enableHighAccuracy: true,
         maximumAge: Infinity
     }
);

参考


0
投票

我找到的解决方案是

  • 编写一个小型 dotnet 控制台应用程序,从 Windows 位置 api 返回位置。 Windows 位置 api 尊重已安装 GPS 的准确性并在可用时返回它。

  • 然后我编写了一个 chrome 扩展,并有权运行这个 dotnet 应用程序并返回结果。

  • 我的网络应用程序可以检查扩展程序是否已安装并触发位置请求。

我不确定这是否是比 gpsgate 本地服务器更好的方法,无论如何,这是无需任何第三方应用程序即可解决问题的好方法。

它在数十种 Windows 松下 Toughbooks 平板电脑上运行良好。

© www.soinside.com 2019 - 2024. All rights reserved.