前段时间再做微信公众号H5开发时,遇到需要使用定位功能,并且项目场景中要求非常高
1.能够实时更新用户位置到地图上
2.精度要求非常高
3.即使信号很弱的时候!!!
说实话,真的是困扰了非常长的一段时间。这期间使用了各个定位方式,都不太尽如人意。但是最后终于好歹还是比较好的解决了。下面总结下这中间使用的坑~~
微信js-sdk定位
因为开发的微信网页,所以第一时间当然用的是微信自带的定位sdk,各种授权,签名以后,能定位了,正常(网络良好)环境下,没有太大问题。但是接下来就很恐怖了,我们的产品经理到地下停车场去测试!!然后发现地图上的定位点最远的时候会被打在当前位置以外2KM的地方。。然后宣告此方案无效(小朋友,你是否有很多问号???)
高德定位
那就试试高德定位吧,因为本人接触高德地图相关API是最多的,而且项目中地图本身也就是使用的高德sdk,所以几下就换过去了。然后去测试,高德倒是不会出现定位到几公里以外的地方。但是问题就在于产品经理用的是好几年前的手机了(安卓6.0系统),他的手机在使用地图定位的时候,会出现幅度不定的范围内摆动的情况。
即:我站在这里没动,定位点总是飘来飘去的?这可不行。
:api返回给我的点位就是这样的哇。。(小问号,你是否有很多朋友???)
百度地图
就没想过试百度的,哈哈哈。一个是百度的坐标系不一样,第二个也是它文档真的有点一言难尽~~
H5 GPS定位
同时上面两种方式都是透过调用接口的形式获取定位,如果信号弱的话(地下室你还定啥位啊??),那获取到的位置就会偏移挺大的。
然后就使用H5原生的navigator定位,这个就不需要信号了,只要用户打开了GPS定位就行。然后发现正常情况下效果和高德的位置不相上下,所以感觉高德也是直接使用的H5 GPS定位的吧?
然后我就佛了~~~~甚至什么呢,在地下停车场时,微信本身的地图、高德地图网页版,也都是一样的效果啊。但是,但是,但是就是要我解决啊??啊??啊??
怎么解决嘛,微信、

最低0.47元/天 解锁文章
575

被折叠的 条评论
为什么被折叠?



