Android:持续位置更新
Posted
技术标签:
【中文标题】Android:持续位置更新【英文标题】:Android:Continuous Location update 【发布时间】:2016-07-19 12:31:31 【问题描述】:我正在开发一个需要跟踪用户位置的应用程序。因此,我尝试了 Fused Location Api (GoogleApiClient) 和 LocationListener,它定期为我提供位置。
但我的问题是当我的设备处于稳定状态时,它仍然在 onLocationChanged(Location location) 上给了我不同的位置
谁能指导我如何解决上述问题!
源代码:
http://pastebin.com/Pu7cNF8h
【问题讨论】:
在位置请求中添加mLocationRequest.setSmallestDisplacement(100);
100 代表米 - Refer。如果您处于稳定状态,Location Provider 不会给出任何值。它会为每 100 米给出 Latitude 和 Longitude。跨度>
@Yugesh:感谢您的及时回复..我会尝试您的建议并让您知道..
您可能会因为手机处于 GPS 性能下降的区域(办公楼、商场等)而获得漂移位置,这可能会迫使 Fused Location Api 恢复到网络位置(即很不准确)。我建议您每隔一段时间添加活动识别,如果它们仍然存在一段时间,请在其区域周围设置地理围栏,然后关闭 Fused Location Api。从长远来看,这可能会节省电力。
【参考方案1】:
你必须增加最小位移,这样它就不会因为一点移动而改变位置。
mLocationRequest.setSmallestDisplacement(100);
以米为单位测量的位移。因此,您需要从初始位置更新的位置移动至少 100 米才能进行新的位置更新。
【讨论】:
以上是关于Android:持续位置更新的主要内容,如果未能解决你的问题,请参考以下文章