Android gps位置真实准确性差

时间:2014-12-07 17:13:41

标签: android gps

我在LocationListener中获取了以下代码配置的位置:

LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 60000, 5.0, locationListener);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 60000, 5.0, locationListener);

我得到的地点经常被疏散。准确定位" gps"提供商大约10-20米,但实际上它可能约500米。在原生Android应用程序谷歌地图中,​​我看到我的位置足够准确。

我怀疑Google使用其他API。是否存在另一种在Android中获取位置的方法?

  • 操作系统:Android 4.4
  • 智能手机型号:Doogee Voyager 2 DG310

1 个答案:

答案 0 :(得分:2)

Google应用使用名为"融合位置提供商的专有提供商" (read more here)。该提供商仍然使用后台存在的网络和GPS提供商。

来自网络提供商的第一个位置修复大部分时间的准确度大于1000米,因为它来自BTC(手机信号塔)。几秒钟后,它应该降至基于Wi-Fi的20-50米精度。 GPS提供的位置通常最大精度为20米,但当您居住在人口密集且高层建筑物与GPS卫星连接不良的区域时,这种情况会增加。

我最近发现Smart Location Library应该可以轻松访问GPS,网络或融合提供商以及活动识别,以减少电池消耗。