我需要在我的应用程序中进行背景检查,基本上是轮询各种 URL 以获取新内容。所以我读过这是用AlarmManager 完成的。
问题是,我不需要新东西一到就通知用户。假设我每小时检查一次,我完全可以在手机休眠时不进行任何检查,并在使用手机时恢复检查。这样用户最终会收到通知,但消耗很少。
所以我尝试了 setInExactRepeating。我在启动时启动它,但也在应用程序启动时启动它(主要用于安装后的会话,并确保它正在运行,即使应用程序被“强制终止”)。如何防止所有这些检查加起来?(只有在没有运行或需要停止前一个检查时才应运行新检查)。