请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于service的启动流程

老师在5-1章讲到启动流程,多次提及需要启动application,或者查看application启动没有。

这就让我有点迷惑了,因为以前总觉得新开一个服务不需要重新启动一个进程。

https://img1.sycdn.imooc.com//szimg/5cedde7400013deb06400360.jpg

因此我是否可以这么理解

如果已经启动了一个应用(有activity),然后在这个应用当中去启动一个服务(普通的服务),此时这个服务所在的application是已经启动了的,不需要为service新启动一个application。

而如果在应用没启动的情况下,直接启动一个服务,那么这个服务需要先启动它所在的application,才能往下启动它自己。

以上对吗?还是说,每个服务都有一个属于自己的application呢?

正在回答 回答被采纳积分+3

1回答

风语 2019-05-29 13:16:00

应用组件不论是Activity还是service,都要跑在应用进程里,而启动应用进程,就会创建一个Application。

Application跟应用组件没有直接关系。

0 回复 有任何疑惑可以回复我~
  • 提问者 全是甘货 #1
    还是不懂,那我打开进入一个普通应用,然后起一个服务,需要重现创建一个application吗
    回复 有任何疑惑可以回复我~ 2019-05-29 13:21:31
  • 风语 回复 提问者 全是甘货 #2
    Application创建跟你是不是要启动一个服务没有关系,只跟你是不是要创建应用进程有关系。打开一个普通应用,如果是冷启动,那会创建一个进程,就会创建Application。如果是热启动,就不会创建进程,也不会创建Application
    回复 有任何疑惑可以回复我~ 2019-05-29 13:26:18
  • 提问者 全是甘货 回复 风语 #3
    谢谢老师耐心教导
    
    那为何此课(如图)中,启动一个service都要反复确认application在不在,不在的话还要创建一个呢,这不证明了service需要依附application创建吗。
    
    那我的疑问还包括了,同一个应用里,service和application的关系是不是多对一的关系呢,应该是的吧。
    回复 有任何疑惑可以回复我~ 2019-05-29 13:42:03
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信