求助 chrome 在 Win10 的定位!

2019-01-07 19:03:45 +08:00
 beginor
在开发一套 GIS 相关的系统, 目标是 Win10 平板 + Chrome 浏览器。

需要使用 HTML5 的 GeoLocation API 来进行定位设备位置,chrome 浏览器需要访问谷歌的服务器来进行网络定位, 当然我朝是不能直接访问的, 所以无法直接定位。

无奈只好搭了个梯子, 能使用 GeoLocation API 了, 可是居然直接被定位到了梯子所在的国家, 应该是根据梯子的 IP 定位的。

请教一下各位老铁们, 有没有什么好办法解决?

- Chrome 浏览器 有没有办法使用 Windows 10 内置的位置服务?
- 有没有办法绕过谷歌的服务器进行网络定位?
- 有些型号的 Win10 平板带 GPS 或者在电脑上插一个 USB 的 GPS,Chrome 能否直接使用 GPS 进行定位?
2339 次点击
所在节点    程序员
27 条回复
XiaoJSoft
2019-01-07 19:28:51 +08:00
1,3 问题不大清楚
第二个问题的话,试试 WebRTC,用 STUN 服务来采集用户真实的 IP 地址,再判断 IP 所在地
XiaoJSoft
2019-01-07 19:31:50 +08:00
@XiaoJSoft
试试看这个 Demo:
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
STUN 服务器的话可以自己部署或者用一些没有被 GFWed 的 STUN 服务器,推荐一个:
http://www.stunprotocol.org/
66beta
2019-01-07 19:36:27 +08:00
Win 10 平板模式没法装 chrome 啊,只能用 edge
beginor
2019-01-07 20:11:53 +08:00
@66beta x86 的平板,可以装 chrome 的。edge 倒是能定位, 但是兼容性比较差, 性能也和 chrome 差好多
beginor
2019-01-07 20:13:37 +08:00
@XiaoJSoft 谢谢, 我看看。 不过最终还是需要 GPS 定位, 因为会野外作业。
Nasei
2019-01-07 20:27:49 +08:00
win10 平板 + chrome 吗...我在 surface 上只用 edge, 滑的爽还省电

这个系统可以有本机辅助程序吗?
phy25
2019-01-08 09:09:00 +08:00
算是 FYI 吧,Chrome 曾经有对接 Windows 7 的位置服务的,后来因为「没什么用」就删掉了,现在什么情况不大清楚也还没查到: https://bugs.chromium.org/p/chromium/issues/detail?id=45535
66beta
2019-01-08 09:10:33 +08:00
@beginor 转成专业版 Windows 才可以跑 exe
yao978318542
2019-01-08 09:37:54 +08:00
用别的定位不行吗?非得 H5 自带?
beginor
2019-01-08 10:04:30 +08:00
@yao978318542 就是因为 H5 自带的有问题才来求助的呀, 可能是我描述的不够清楚吧
beginor
2019-01-08 10:05:42 +08:00
@66beta 是的, 肯定是专业版。
beginor
2019-01-08 10:09:52 +08:00
@Nasei Edge 浏览的网页是没有问题, 但是我的 WebGIS 需要使用 WebGL 进行大量的渲染,Edge 和 Chrome 比起来性能确实差好远, 而且 CSS 的兼容性也比较难处理。

换句话说,Chrome 就是新一代的 IE6。
liuzhedash
2019-01-08 10:13:41 +08:00
提供个野思路:写个 Windows 服务获取 GPS 信息,然后 监听本地端口提供一个 websocket server,chrome 里的 JavaScript 访问这个 websocket server 拿到 GPS 数据
beginor
2019-01-08 10:18:23 +08:00
@yao978318542 不好意思, 我没看清楚你的回复。 请问对于浏览器来说, 除了 H5 的 Geolocation API 之外, 还有什么好的选择呢?
beginor
2019-01-08 10:21:57 +08:00
@liuzhedash 我也在考虑这个方法, 作为替代方案。 做一个 win32 程序, 封装 chromium 内核 。
yao978318542
2019-01-08 10:22:13 +08:00
可能是我没有理解你的问题吧 高德 百度 不都有定位接口吗?
beginor
2019-01-08 10:25:10 +08:00
@phy25 😳
beginor
2019-01-08 10:44:00 +08:00
@yao978318542 这些地图的 WebSDK,定位不都是依赖 HTML5 的 GeoLocation API 么?
yao978318542
2019-01-08 10:48:22 +08:00
@beginor #18 不一定吧 还有 IP 定位 我之前做打车系统的时候有用高德的定位
oisc
2019-01-08 10:49:10 +08:00
本地开一个 host http service,用原生接口获取 GPS 位置,然后同域下指定一个域名到 localhost,浏览器从这个 host 服务获取 GPS 位置,你看可行吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/524748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX