如何更改 LocationRequest 的间隔
Posted
技术标签:
【中文标题】如何更改 LocationRequest 的间隔【英文标题】:How can I change the interval of LocationRequest 【发布时间】:2014-06-18 20:26:42 【问题描述】:我将我的应用程序设置为每 5 秒获取一次位置通知。
mLocationRequest = LocationRequest.create();
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setInterval(5000);
mLocationRequest.setFastestInterval(5000/6);
myLocationReq.requestLocationUpdates(mLocationRequest
so - 每 5 秒调用一次 onLocationChanged。 这工作正常。
现在我想将间隔更改为 1 秒,而不调用
requestLocationUpdates
如何做到这一点?
【问题讨论】:
你碰巧解决了这个问题吗? 没有。似乎每当您想更改间隔时都必须调用 requestLocationUpdates 。这样做的主要问题是您可能会立即收到位置通知。 【参考方案1】:希望这个答案还不算太晚,只需创建一个具有所需 setInterval 值的 LocationRequest 对象。然后只需调用 requestLocationUpdates 即可。
我将此与标签一起使用,其中 1 个标签必须比其他标签更快地获取位置更新。所以我只是改变了 onResume 和 onPause 方法中的时间间隔。
【讨论】:
以上是关于如何更改 LocationRequest 的间隔的主要内容,如果未能解决你的问题,请参考以下文章
它是如何工作的 - requestLocationUpdates() + LocationRequest/Listener
FusedLocationProviderApi:LocationRequest.setPriority 如何与“位置模式”设备设置一起使用?
如何检查我们是不是已经调用了 fusedLocationProviderClient.requestLocationUpdates(locationRequest, pendingIndent);