为了账号安全,请及时绑定邮箱和手机立即绑定

FusedLocationClient时间间隔手机锁定时变慢

FusedLocationClient时间间隔手机锁定时变慢

拉风的咖菲猫 2021-04-05 16:31:28
因此,我已经与FusedLocationClient合作了大约2个月。向客户端传递一个位置请求,该请求至少在手机“清醒”时正确设置检索位置更新的时间间隔。如果将时间间隔设置为1分钟,则几乎每分钟都会得到一次更新,但是当手机被锁定然后返回到应用程序时,我可以看到更新仅每10分钟发生一次。有使用过Android FusedLocationClient的经验的人有什么线索可能会发生这种情况吗?客户端正在使用Looper.myLooper()循环,如果手机被锁定,此线程会减慢速度吗?  mLocationRequest = new LocationRequest();    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);    mLocationRequest.setInterval(OneMin);    mLocationRequest.setFastestInterval(OneMin);    mLocationRequest.setMaxWaitTime(OneMin);更新为原始问题********因此,在从回调方法将“融合的位置客户端”切换为“待处理的意图方法”之后,我仍然得到相同的结果。这个待定的意图方法应该从应用程序后台而不是前台运行客户端,但是位置更新仍然会慢到10分钟。这是我的待定意图日志。06-28 07:55:39.201 D/ddd: onHandleIntent: 38.5377347, -106.940894106-28 07:56:41.128 D/ddd: onHandleIntent: 38.5377747, -106.940646506-28 07:57:43.055 D/ddd: onHandleIntent: 38.5372963, -106.940943906-28 07:59:33.098 D/ddd: onHandleIntent: 38.5378022, -106.940681406-28 08:10:22.646 D/ddd: onHandleIntent: 38.5378164, -106.941032106-28 08:20:35.668 D/ddd: onHandleIntent: 38.5378373, -106.940801606-28 08:30:35.790 D/ddd: onHandleIntent: 38.5377677, -106.9407083您可以从时间戳中看到该间隔从1分钟变为10分钟。关于如何防止这种情况的任何想法?Android文档正在深入研究建议使用Scheduled job的漏洞,但没有给出直接的示例。
查看完整描述

1 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

如果您是在Android 8.0(API级别26)或更高版本上进行测试,则每小时只会检索几次更新。这是来自Android文档。

为了减少功耗,Android 8.0(API级别26)限制了后台应用检索用户当前位置的频率。应用程序每小时只能接收几次位置更新。

运行API 25级及更低版本的设备将正常接收后台更新。可以在Android版本概述中找到更多信息。


查看完整回答
反对 回复 2021-04-28
  • 1 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信