在我当前的 Android 项目中,我通过 启动服务startService()
,然后通过 绑定到服务bindService()
。(我这样做是因为我想要一个可以与之通信的启动服务,没关系)
在上下文绑定到服务后,如果我理解这一点,通常会调用onServiceConnected()
我的ServiceConnection
(我之前创建的) 。
我可以假设,只有在我的服务中的所有代码onServiceConnected()
都执行后才会调用它?onCreate
在我当前的 Android 项目中,我通过 启动服务startService()
,然后通过 绑定到服务bindService()
。(我这样做是因为我想要一个可以与之通信的启动服务,没关系)
在上下文绑定到服务后,如果我理解这一点,通常会调用onServiceConnected()
我的ServiceConnection
(我之前创建的) 。
我可以假设,只有在我的服务中的所有代码onServiceConnected()
都执行后才会调用它?onCreate
我可以假设,只有在我的服务的 onCreate 中的所有代码都执行后才调用 onServiceConnected() 吗?
是的你可以。
根据服务生命周期图 onBind()
,直到完成后才调用onCreate()
。
该文档指出,系统调用onServiceConnected()
以传递IBinder
服务onBind()
方法返回的返回值。
因此onCreate()
is completed beforeonServiceConnected()
被调用,因为它依赖于onBind()
after的返回值onCreate()
。您还可以在图中看到“客户端绑定到服务”的图表。