0

我面临一个问题。我正在使用 Fused Location Provider,在文档中它写道,当我们使用高优先级时,我们将每 5 秒获得一次更新,但我看过一些教程,那个人写了这个函数

protected void createLocationRequest(){
    mLocationRequest=new LocationRequest();
    mLocationRequest.setInterval(INTERVAL);
    mLocationRequest.setFastestInterval(FASTEST_INTERVAL);
    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
}

此 INTERVAL 为 10 秒。这是否意味着我将每 10 秒或 5 秒获得更新(就像它在文档中写的使用高优先级一样)?提前致谢。

4

1 回答 1

2

间隔 10 秒:您将大约每 10 秒收到一次位置更新。但它是近似值,它可能给出位置少于或多于 10 秒。

最快间隔:此值必须低于间隔值。好的,我们知道位置更新将在 10 秒左右(或多或少)到来。最快的意思是在这里,我不想接收低于这个值的位置更新(最快的间隔)

假设您有以下参数

  • 间隔:10秒
  • 最快间隔:5秒

可能的结果如下(假设)

01:00:00(请求)

01:00:12(位置更新,12 秒)

01:00:22(位置更新,10 秒)

01:00:30(位置更新,8 秒)

01:00:38(位置更新,8 秒)

01:00:46(位置更新,8 秒)

01:00:52(位置更新,6 秒)

01:00:59(位置更新,7 秒)

...

结果:您收到位置更新大约10 秒和超过5 秒

于 2016-06-29T21:10:46.687 回答