Java 同一地点的经度和纬度点发生变化

Java 同一地点的经度和纬度点发生变化,java,android,Java,Android,我是安卓开发者 我得到的是一个地方的经度和纬度点,但对于同一个地方,这些值会发生变化,第三个小数点也会发生变化 我的主要目的是检测一个地方,使其只起作用 当所有这些经度和纬度值匹配时,它们必须 保持不变 我的问题是: 这种变化的原因是什么 是否有任何方法使这些值在特定位置保持不变 尝试使用GPS获取更准确的数据,但要知道它们并非每次都是相同的值,但也不会有很大的不同手机的GPS不是很准确。也就是说,它是非常准确的导航在您的汽车,但错过了20米是不是闻所未闻 要确定您是否在同一个位置,您应该计算

我是安卓开发者

我得到的是一个地方的经度和纬度点,但对于同一个地方,这些值会发生变化,第三个小数点也会发生变化

我的主要目的是检测一个地方,使其只起作用 当所有这些经度和纬度值匹配时,它们必须 保持不变

我的问题是:

  • 这种变化的原因是什么
  • 是否有任何方法使这些值在特定位置保持不变

尝试使用
GPS
获取更准确的数据,但要知道它们并非每次都是相同的值,但也不会有很大的不同

手机的GPS不是很准确。也就是说,它是非常准确的导航在您的汽车,但错过了20米是不是闻所未闻


要确定您是否在同一个位置,您应该计算当前位置与该位置坐标之间的距离。如果它低于一个阈值(试着找到一个有意义的阈值)-你就在那里。

你也可以看看准确度。这个类有一个
getAccurance()
方法——如果你的准确度比上一个方法低,那么可能是这个人进了里面,失去了对天空的视线


正如我在其他帖子中所说,我建议使用GPS而不是单纯的GPS。您也可以使用
isBetterLocation
方法。

如上所述,GPS固有精度不是最好的。有关小数位数如何表示精度级别的信息,请参见

简言之,小数点后第三位的精度差为43-111米,具体取决于您在地球上的位置。因此,我要么研究其他一些细化数据的方法,要么实现某种阈值处理