我对安卓系统中使用的Timer
和AlarmManager
有点困惑。
它们都将一个任务调度为每隔A秒运行一次。首选使用它们的主要场景是什么?
例如,对于X情况,使用Timer
,但另一方面,对于Y情况,使用AlarmManager
。
发布于 2013-01-29 17:21:11
如果设备休眠,定时器线程也会休眠,您的代码将不会按时执行。另一方面,AlarmManager
的警报是内核级的。根据你如何注册它们,你可以请求唤醒设备,或者在下一次有东西唤醒设备时执行。警报通常更可取,占用的资源更少。
发布于 2013-01-29 17:06:15
Timer启动一个服务,它非常频繁地执行代码,即使它实际上没有做任何事情。
另一方面,Alarmmanager将启动一个总是在后台运行的服务,这是你想要用来安排你的代码在你的应用程序没有打开时运行的服务。
https://stackoverflow.com/questions/14579034
复制相似问题