什么是Service
Service
是Android中实现程序后台运行的解决方案,它非常适合执行那些不需要和用户交互而且还要求长期运行的任务。Service
的运行不依赖于任何用户界面,即使程序被切换到后台,或者用户打开了另外一个应用程序,Service
仍然能够保持正常运行。
不过需要注意的是,Service
并不是运行在一个独立的进程当中的,而是依赖于创建Service
时所在的应用程序进程。当某个应用程序进程被杀掉时,所有依赖于该进程的Service
也会停止运行。
另外,不要被Service
的后台概念所迷惑,实际上Service
并不会自动开启线程,所有的代码都是默认运行在主线程当中的。也就是说,我们需要在Service
的内部手动创建子线程,并在这里执行具体的任务,否则就有可能出现主线程被阻塞的情况。