当前位置: 代码迷 >> Android >> 当心:android5.1 系统alarmManger轮训是1分钟一次了
  详细解决方案

当心:android5.1 系统alarmManger轮训是1分钟一次了

热度:284   发布时间:2016-04-28 00:20:54.0
小心:android5.1 系统alarmManger轮训是1分钟一次了

今天同事遇到一问题, 用alarm manager来做定时任务, 比如每隔5秒执行一次操作。 结果在5.1的机器上的测试结果是每隔60秒才执行一次,而在低于5.1的系统上则是按预期的以5秒为周期执行。。。

一顿google之后发现5.1为了做耗电量的优化,android将alarm manager的行为改了, 间隔小于1分钟的定时请求,系统将其调整为1分钟。。。

这意味着, 之前的用alarm manager执行定时任务且间隔小于1分钟的, 在5.1系统上将不能按期望工作了

可选方案,handler, timertask, scheduledExecutor等

参考:
https://code.google.com/p/android/issues/detail?id=161244
https://commonsware.com/blog/2015/03/23/alarmmanager-regression-android-5p1.html
http://stackoverflow.com/questions/29914724/scheduling-alarm-for-every-second-in-android-5-1

  相关解决方案