为了能够在我的应用程序/活动和本地服务之间编写“漂亮”代码,我需要了解一些基本的Android概念:
我想知道的是我的应用程序(如在我的活动中)和我的本地服务是否共享一个线程。即当活动和本地服务执行排队的任务时,这些任务是否在一个线程中交错,从而共享线程或服务是否有自己的线程?
此外,如果本地服务与活动共享线程,并且本地服务直接调用(通过回调)其中一个活动(即没有发布消息),则活动线程“暂停”或者是执行排队等待以后执行的特定功能?
/亨里克
答案 0 :(得分:4)
与活动和其他组件类似,服务在应用程序进程的主线程中运行。因此,它们不会阻止其他组件或用户界面,它们经常产生另一个线程用于耗时的任务(如音乐播放)。请稍后再见Processes and Threads。
现在,如果该服务是一个不同故事的单独应用程序。
也来自Application Fundamentals:
在许多方面,每个Android应用程序都存在于自己的世界中:
- 默认情况下,每个应用程序都在自己的Linux进程中运行....