服务如何在后台运行 - Android

时间:2014-12-03 16:44:54

标签: android service

我今天在采访中被问到这个问题。

什么是服务? 我回复的服务是Android的基本组件,它没有UI并且在后台运行。

服务是否在主线程上运行? 否

然后它如何在后台运行? .......

我一片空白。有人可以解释如果服务在ui线程中运行,服务如何在后台运行。

感谢。

2 个答案:

答案 0 :(得分:2)

服务在UI线程上运行。在后台运行服务任务'你需要在该服务中产生一个新的线程。 '在背景中'在服务的上下文中可以视为“没有UI'”,但并不意味着它在自己的线程中运行。

答案 1 :(得分:2)

引自official source

  

请记住,如果您使用某项服务,它仍会在您的服务中运行   默认情况下,应用程序的主线程,所以你仍然应该创建一个新的   服务中的线程,如果它执行密集或阻塞   操作

“UI线程”基本上是您的应用程序使用的主线程并运行它的UI。它不仅限于运行UI。