Android FusedLocationAPI GPS 精度似乎不正确

Android FusedLocationAPI GPS accuracy seems incorrect

我正在编写一个简单的 Android 应用程序来捕获用户的位置。

我正在使用 FusedLocationAPI 提供位置。

  mLocationRequest = LocationRequest.create()
            .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY)
            .setInterval(5000)
            .setFastestInterval(5000);

当用户按下按钮时,应用程序将首先检查最后已知的位置。如果这不到一分钟并且精度 < 50 米,则使用该位置。如果不是,应用程序会请求位置更新,直到收到精度 < 50 米的位置。该应用随后停止请求更新,以帮助节省电量。

这在 99% 的情况下都非常有效。但是,在测试中,出现了这样的情况,即对同一位置进行了两次读数,但报告的坐标之间存在 110m 的距离。我试图理解为什么。

读数 #1:拍摄于 10:46,精度为 36 米。

读数 #2:拍摄于 13:27,精度为 26 米。

用户在同一位置(约2m以内)。我会假设,由于它们的位置处于精度的边缘,因此点之间的最大距离只能为 52 米。不知道为什么是110m

我是不是遗漏了什么明显的东西?

准确度数字不是这个意思。引用自 google 文档:

We define accuracy as the radius of 68% confidence. In other words, if you draw a circle centered at this location's latitude and longitude, and with a radius equal to the accuracy, then there is a 68% probability that the true location is inside the circle.

In statistical terms, it is assumed that location errors are random with a normal distribution, so the 68% confidence circle represents one standard deviation. Note that in practice, location errors do not always follow such a simple distribution.

http://developer.android.com/reference/android/location/Location.html#getAccuracy