23

我想知道返回的准确率值是什么意思

location.getAccuracy()

例如:如果它返回 "1" ,那意味着什么?

4

3 回答 3

66

来自 Android 文档(http://developer.android.com/reference/android/location/Location.html#getAccuracy()

公共浮动 getAccuracy ()

在 API 级别 1 中添加 获取此位置的估计精度,以米为单位。

我们将准确度定义为 68% 置信度的半径。换句话说,如果你以这个位置的经纬度为中心画一个圆,半径等于精度,那么有 68% 的概率是真正的位置在这个圆内。

在统计方面,假设位置误差是随机的,服从正态分布,因此 68% 的置信度圆代表一个标准差。请注意,在实践中,位置误差并不总是遵循如此简单的分布。

此精度估计仅与水平精度有关,如果包含在此位置中,则不指示方位、速度或高度的精度。

如果此位置没有准确度,则返回 0.0。LocationManager 生成的所有位置都包含精度。

所以基本上,如果它返回 1,则意味着您有 68% 的概率位于报告的 GPS 位置 1 米范围内。

于 2013-07-10T06:02:15.367 回答
25

准确度级别的整个点意味着您在 X 距离内。您返回的位置值距离您的实际位置 20 米;精度为20米。这是你能做到的最好的准确性。如果您使用 GPS 与简单的蜂窝塔三角测量相比,您应该获得更好的精度。

返回的数字越小location.getAccuracy(),越准确。

getAccuracy()描述以米为单位的偏差。因此,数字越小,准确度越高。

于 2013-07-10T05:33:34.060 回答
3

location.getAccuracy() 提供表示精度的浮点值,以米(半径)为单位。因此,如果它返回 1,则表示对象位置精确到 1 米半径范围内。

整数越小精度越高。

于 2013-07-10T06:23:10.627 回答