android locationRequest间隔不按要求更新

时间:2016-07-05 13:24:52

标签: android android-location google-api-client

在我的项目中,我使用GoogleApiClient和locationRequest获取当前位置并在一定时间间隔后定期更新, 我知道setInterval和。之间有区别 setFastestInterval和

interval是我从应用程序设置更改的变量,其值为

所以我称之为:

        public int interval = 1 * 1000;

        locationRequest.setFastestInterval(interval);
        locationRequest.setInterval(interval);



            switch (interval_index)

    {
        case 0:
            interval = 1 * 1000;
            break;
        case 1:
            interval = 1 * 60 * 1000;
            break;
        case 2:
            interval = 5 * 60 * 1000;
            break;
        case 3:
            interval = 10 * 60 * 1000;
            break;
        case 4:
            interval = 30 * 60 * 1000;
            break;
    }

如果我将间隔设置为例如30分钟,我会在5分钟后获得更新,例如,它不是固定时间,但我随机获得更新,为什么?

1 个答案:

答案 0 :(得分:0)

有两种方法可以触发更新,时间和距离,设置间隔(是更新的最慢时间常量),FastestInterval(是更新的最短时间)和setSmallestDisplacement是最小距离(以米为单位)更新。

即使您仍然在同一个地方,该位置可能会根据您的准确性而改变,这将触发onLocationChange