在LocationManager中获取错误的位置

时间:2011-12-28 20:49:24

标签: android maps locationmanager

将LocationManager与网络提供商一起使用时,我的位置完全错误。我在非洲以外的海域找到了一个位置,准确度大约是2000.我的谷歌地图显示了准确的位置。

有没有人知道问题是什么?当我使用getLastKnownLocation()时,它是一样的。

1 个答案:

答案 0 :(得分:0)

网络位置提供商非常不准确。通常如果你连接到WiFi,你可以在100米范围内,但在手机信号塔,2000米是很正常的。这真的没有问题,坚持下去。

如果谷歌地图能够在关闭GPS的情况下获得准确的位置,那么可能是由于他们所做的一些非常先进的位置管理。但不幸的是,2000米的网络位置在我的所有测试案例中都是正常的。

修改

  

这就是说location.getAccuracy()的值大约是2000(不是以米为单位的值)。

当getAccuracy()返回值2000时,表示米。以下是The DocsgetAccuracy()所说的内容:

  

以米为单位返回修正的准确性。如果hasAccuracy()为false,则返回0.0。

但是它返回float值,虽然它不显示单位,但它仍然是米。