如何理解android服务?

L.J*_*J.W 0 service android

我是android的新手,我对android服务感到困惑,根据我的理解,在活动中运行UI相关代码,后台工作在我自己的线程中运行,那么,服务的用途是什么?似乎我可以使用活动和线程来做任何事情.

Kev*_*art 5

后台工作可以而且应该在一个线程中运行.但是,如果该工作不是服务的一部分,则如果应用程序的任何活动都不可见,则操作系统可以在不发出警告的情况下停止该线程.

例如,如果您编写MP3播放器应用程序,如果用户返回主屏幕,您可能不希望音乐停止.因此,您创建一个实际播放音乐的服务,然后操作系统将尝试避免在服务运行时终止应用程序的进程.

服务还可用于为其他应用程序提供功能.在这种情况下,当其他应用程序希望使用该服务时,应用程序的进程将按需启动,并且一旦其他应用程序完成该服务,操作系统可能会停止该应用程序的进程.

有关详细信息,请参阅服务文档.