用于持久频繁调度的AlarmManager替代方案

时间:2015-09-21 09:24:30

标签: java android android-alarms

我注意到Android 5.1不再接受短于60秒(source)的时间间隔的重复警报。

我正在开发一个记录无线网络信息的应用程序。对于应用程序的操作,它必须每1-2秒执行一次操作,并且即使它使用大量资源也不会被操作系统杀死或挂起。长时间(几个小时)的可靠操作是最重要的。对电池寿命的影响不是问题。

到目前为止,实现此功能的最可靠方法是使用重复报警。现在使用Android 5.1不再是一个选项。更换AlarmManager实现的最佳选择是什么?

1 个答案:

答案 0 :(得分:1)

作为一种解决方法,您可以设置60个警报,以便为您当前的实施提供灵活的解决方案。检查操作系统版本并根据需要设置多个警报。

但是对于长期解决方案,我建议您实施粘性前台服务,这类似于音乐播放器。像Handler.postDelayed这样简单的东西应该足以让它保持活力。这样做的原因是警报不准确,并且最好对过程进行一些控制。