我在项目里集成了高德地图,设置了高精度定位模式,但是定位会跳动,我自己不动它都会跳动,而且跳动的距离还比较远.这是为什么?怎么解决?
高精度模式是GPS定位,gps经常因为各种原因如大气层干扰等发生偏移。
想解决这个问题的话,最好在获取定位数据之后,加个GPS漂移过滤算法(百度上有一些文档,可以搜一下看看),把GPS返回的毛刺数据做一下过滤即可。
这个是GPS定位固有的问题,就是当你在一个地方固定不动的时候GPS采集到的位置信息是会漂移的,其实在运动的时候也会,只是几率会更小。具体的原因你可以去查GPS固定位置漂移。
一般的解决办法是在软件上做判断,即当速度为0时,如果一定是间内产生了位置移动则自动过滤,或者是判断前后两次采集到的位置如果变化太大就忽略,还有就是如果如果采集的频率高的话可以做滤波算法。
正常,它一般这种地图定位类的都是实时定位的,然后定位会移动可能就是楼上几个大神说的GPS定位本身会根据外界因素导致定位结果不同,个人一般解决就是直接获取第一次定位的结果,然后就让其停止定位了,这样的用户体验也能接受,反正第一次定位的结果一般也不会差太远,当然如果真要考虑严谨的话就设置下gps过滤算法
gps定位好像分手机定位和网络定位 网络定位可能误差更大