最近研究了一下钉钉打卡的功能,大致要实现这4个需求:地图显示、定位、地图覆盖效果、距离测量
背景是一个hybridApp,用的是cordova打包
定位
定位相对而言比较复杂所以优先考虑,关于定位,我尝试了3种办法
第一个尝试了cordova自带的插件,结果是报错:code:2,message:network provider is not available,原因是新版的插件已经删掉了关于Android版定位的代码,改为基于系统浏览器(chrome内核)进行定位,但经测试发现因为国内网络原因根本无法定位
第二个是用的高德地图的JavaScript API,定位虽然成功但是定位和实际位置有几百米的误差这个肯定不行
第三个是用的cordova的baidumaplocation插件,误差在几十米之间还可以接受
首先附上github的连接https://github.com/aruis/cordova-plugin-baidumaplocation
第一步你得先去百度http://lbsyun.baidu.com/apiconsole/key创建一个应用
创建android应用签名文件然后查看SHA1
cmd命令: