您好我在互联网上阅读我们可以使用警报管理器和ScheduledExecutorService
安排我们想要以一定间隔的间隔运行的任何事情。
我想知道它们与
时使用的内容有什么区别提前致谢。
答案 0 :(得分:12)
ScheduledExecutorService
是您的流程中 的内容。如果您的进程因其他原因已经存在,例如它正在提供前台UI,并且您希望使用ScheduledExecutorService
进行定期工作,那很好。但是,一旦您的应用移到后台,其过程可能会随时消失,随身携带ScheduledExecutorService
,您将无法再定期获得控制权。
AlarmManager
是在之外的过程。如果您正在寻找与Windows相同的Windows“计划任务”或OS X / Linux cron
作业,那就是AlarmManager
(或JobScheduler
在Android 5.0+上)是为了。这些是针对您需要在后台定期运行应用程序代码但很高兴允许您的流程可能在这些期间之间终止的情况。