服务和使用android中的警报管理器之间的区别

时间:2012-04-01 15:08:56

标签: android service alarmmanager

在android中,服务用于在后台运行。但使用报警管理器也可以实现同样的目的。警报接收器可以执行与您在服务中执行的操作相同的操作。那么android中的服务需求是什么?

3 个答案:

答案 0 :(得分:2)

两者都是截然不同的。

AlarmManager类用于在特定时间间隔之后执行某些事件,或者它可以在常规时间间隔上执行。事件也可以是服务的执行。 AlarmManager允许您安排应用程序在将来的某个时间运行。

Service的情况下,它是一个没有/需要UI的后台进程。服务不是一个单独的过程或服务不是一个线程。服务是一个应用程序组件,表示应用程序希望在不与用户交互的情况下执行较长时间运行的操作,或者为其他应用程序提供使用的功能

答案 1 :(得分:1)

实际上这些是两件非常不同的东西。 Alarm Manager可用于定期使用服务执行某些任务。但也可以使用服务,例如将一些繁重的工作从UI线程中移出(从休息服务器下载数据)或者在前台服务的情况下,继续做一些工作(mp3播放器)。

您可以在Styling Android上获得有关如何使用服务(以及考虑AlarmManager的一些建议)的一些解释。

答案 2 :(得分:0)

通常,当您不再需要UI时,服务将用于处理逻辑。例如,我想要使用的服务每15分钟检查一次社交网站的更新。该服务具有处理更新的逻辑。但谁将每15分钟启动一次服务?这就是使用AlarmManager的地方。它将每15分钟定期启动一次服务,这样服务就可以执行其逻辑并在作业完成后自行停止,我的应用程序不会耗尽电池。