【发布时间】:2014-06-16 06:40:32
【问题描述】:
我正在编写一个简单的基于 GPS 的位置感知应用。每当启用 GPS 时,应用程序都会请求位置更新并在 TextView 中打印纬度和经度。如果 GPS 被禁用,位置提供者将退回到LocationManager.NETWORK_PROVIDER 以三角测量设备相对于相邻蜂窝塔的位置。目的是每当检测到设备移动时,它应该开始使用 lat/long 填充TextView。当没有运动时,该过程应该停止。为此,我将位置更新率实现为:
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 1, this);
上面的行会导致非常频繁的位置更新(即使没有移动,我也会不断获得纬度/经度值)。我在某处读到,放置minTime=0 不是一个好主意(电池耗电更快)。当我将其更改为 2 或 3 秒时,更新变得非常缓慢(即使设备移动超过 50 米)。更改minDistance 似乎也不起作用!我想知道 Google 地图应用程序使用哪些设置?功耗对我来说不是一个限制因素,因为我正在为一些网络路测设备(从车辆的车载铅酸电池获得恒定功率)开发应用程序。
【问题讨论】:
标签: android gps geolocation location