服务的生命周期跟Activity的生命周期类似
但是生命周期可能有些特殊
可能比你关注服务如何创建和销毁更重要,因为服务可以在用户不知道的情况下在后台运行。
服务的生命周期
可以分为以下两个路径:
1. startService(): onCreate()- >onStartCommand()->Service running--调用context.stopService() ->onDestroy()
2. bindService(): onCreate()->onBind()->Service running--调用>onUnbind() -> onDestroy()
注意:1是由于onCreate()方法只会在Service第一次被创建的时候调用,如果当前Service已经被创建过了,不管怎样调用startService()方法,onCreate()方法都不会再执行。每次都只会有onStartCommand()方法中的打印日志。
2 一个Service必须要在既没有和任何Activity关联又处理停止状态的时候才会被销毁。
网友评论