Android 同一位置GPS数据的变化

Android 同一位置GPS数据的变化,android,gps,direction,Android,Gps,Direction,在我的应用程序中,我根据GPS位置计算了速度 由于GPS接收器即使在同一位置也可能有不同的坐标,所以即使手机在我的桌子上,我的应用程序也会记录速度 如果我在同一位置接收GPS数据,我需要避免使用 我正在考虑添加一些基于“方位”的逻辑,这样我就可以确定手机是在实际移动,还是从任何方向接收跳跃的位置数据 在此之前,我想知道是否有其他方法可以避免此类数据?根据Javadoc中的方法请求public void requestLocationUpdates(longminTime,floatminDist

在我的应用程序中,我根据GPS位置计算了速度

由于GPS接收器即使在同一位置也可能有不同的坐标,所以即使手机在我的桌子上,我的应用程序也会记录速度

如果我在同一位置接收GPS数据,我需要避免使用

我正在考虑添加一些基于“方位”的逻辑,这样我就可以确定手机是在实际移动,还是从任何方向接收跳跃的位置数据


在此之前,我想知道是否有其他方法可以避免此类数据?

根据Javadoc中的方法请求public void requestLocationUpdates(longminTime,floatminDistance,Criteria-Criteria,pendingent-intent)找到

minTime位置更新之间的最小时间间隔,单位为 毫秒距离
位置更新之间的最小距离,单位为 仪表


因此,您可以使用
minDistance
参数来避免在很短的距离内获得更新…

在使用了许多方法之后,我用轴承对其进行了编程

我得到的速度基于最后5个位置。我添加了逻辑来检查每个位置和下一个位置的方位,如果所有方位都有较大的差异,我假设位置是从随机方向接收的,因此设备实际上没有移动


这对我来说非常有效:)

根据我的要求,我的“思维距离”不能超过5米。我不认为这会对我有帮助,因为最后一次读数的位置变化约为20+米。可能你可以尝试使用精度来丢弃不准确的结果。。。