微信企业号开发:微信考勤百度地图定位,错误修正详解手机开发
在使用百度地图进行微信考勤时,遇到很多问题,尤其是定位问题,我知道定位有偏差,但使用百度地图,几十次后,偶尔一次会错的离谱,例如直接就定位到了外省,例如我一直在西安,一次定位到了天津,一次定位到了石家庄,我不知道为什么会这样。偏差几千米还能理解,可偏差几百公里就是在让人不能理解了。是因为我用的百度API是免费的吗?当然出现的次数不多,一般情况下,四五十次,会偶尔出现一两次这么离谱的偏差。
实在找不到原因,也不能是缓存,因为我没有去过石家庄,天津。没办法,但这个问题,又不能不解决,于是只能把四种计算经纬度的方法都列出来,高德地图的经纬度,HTML5的经纬度,经过百度转化的经纬度,百度地图的经纬度,都列出来,看看到底那一块出错了。
发现高德的经纬度和HTML5的经纬度基本相同,HTML5的经纬度经过转化的经纬度和百度地图的经纬度基本相同。
这四个经纬度的具体差异参考百度地图,高德地图,HTML5经纬度比较
经过实际测试,百度地图获取的周边信息比高德地图获取的周边信息要准不少,高德地图获取的周边信息经常偏差四五公里,但百度地图就会好很多,基本上在一公里以内。
因此我还是决定使用百度地图,但百度地图偶尔错的离谱如何修正呢?
百度地图一次错的离谱的定位:
既然决定使用百度地图定位,那么这个错误就不能不修正,但如何修正呢?使用高德地图,高德地图虽然没有这么离谱的事,但我测试,误差经常是四五公里,实在是太大了。
那有没有更好的方法呢?
最终我发现,在百度地图没有问题时,获取的省市区和高德地图的省市区是一致的,在百度地图出现异常时,省市区是不一致的,因此我采用了,以百度地图为主,高德地图为辅的方式,修正了百度地图的偶尔出现的错误,在发现错误时,让员工刷新重新获取地理信息,来修正百度地图的这个偶尔出现的错误。其实也可以采用比较HTML5的经纬度和百度地图经纬度比较的方式进行修正,但我目前没有采用。
参考文章
关于地图坐标和定位偏差
中国地图偏移问题
5294.html
app程序应用开发手机开发无线开发移动端开发相关文章
- python3.7错误ImportError: /lib64/libc.so.6: version `GLIBC_2.18' not found
- Nginx配置404错误页面跳转
- Oracle Net 连接失败:如何解决?(oraclenet错误)
- 谷歌错误地为安卓“推出”了 Clankium 浏览器
- MSSQL附加数据库出现错误的解决方法(mssql附加数据库错误)
- mssql登录遭遇233:解决的艰难之路(mssql登录233错误)
- 2003年MySQL连接出错的心酸历程(2003错误mysql)
- 如何解决MySQLParse错误(mysql_parse)
- ASP初学者常犯的几个错误(ZT)
- PHP错误之引号中使用变量
- Linux服务器nginx访问日志里出现大量http400错误的请求分析