计时器和报警管理器之间的区别

时间:2013-01-29 08:58:45

标签: java android

我对Android中使用的TimerAlarmManager感到有些困惑。

他们之间的主要区别是什么

他们都计划每隔A秒运行一次任务。他们更喜欢使用的主要方案是什么?

例如,对于X情境,请使用Timer但另一方面,对于Y情况,请使用AlarmManager

2 个答案:

答案 0 :(得分:31)

Timer将启动一个跟踪何时启动代码的线程。如果设备进入睡眠状态,定时器线程和代码也将无法按时执行。另一方面,AlarmManager的警报是内核级别的。根据您的注册方式,您可以请求唤醒设备,或在下次唤醒设备时执行。警报通常是优选的并且使用较少的资源。

答案 1 :(得分:0)

计时器启动一个服务,它经常执行代码甚至认为它实际上没有做任何事情。

另一方面,Alarmmanager将启动一个始终在后台运行的服务,这是您在应用程序未打开时安排代码运行的目的。