onServiceConnected 是否仅在 Service onCreate 之后调用?
Is onServiceConnected only called after Service onCreate?
在我当前的 Android 项目中,我通过 startService()
启动一个服务,然后我用 bindService()
绑定到该服务。 (我这样做是因为我想启动一个可以与之通信的服务,没关系)
上下文绑定到服务后,如果我理解正确,通常会调用我的 ServiceConnection
(我之前创建的) 的 onServiceConnected()
.
我可以假设 onServiceConnected()
仅在 我的服务 onCreate
中的所有代码 执行后调用吗?
Can I assume, that onServiceConnected() is only called after all of my
code in the onCreate of my Service is executed?
是的,你可以。
根据 service lifecycle diagram onBind()
直到 onCreate()
完成后才会被调用。
文档指出系统调用 onServiceConnected()
来传送由服务的 onBind()
方法编辑的 IBinder
return。
因此 onCreate()
在调用 onServiceConnected()
之前完成,因为它依赖于 onCreate()
之后出现的 onBind()
的 return 值。您还可以在图表中看到 "Clients are bound to service".
在我当前的 Android 项目中,我通过 startService()
启动一个服务,然后我用 bindService()
绑定到该服务。 (我这样做是因为我想启动一个可以与之通信的服务,没关系)
上下文绑定到服务后,如果我理解正确,通常会调用我的 ServiceConnection
(我之前创建的) 的 onServiceConnected()
.
我可以假设 onServiceConnected()
仅在 我的服务 onCreate
中的所有代码 执行后调用吗?
Can I assume, that onServiceConnected() is only called after all of my code in the onCreate of my Service is executed?
是的,你可以。
根据 service lifecycle diagram onBind()
直到 onCreate()
完成后才会被调用。
文档指出系统调用 onServiceConnected()
来传送由服务的 onBind()
方法编辑的 IBinder
return。
因此 onCreate()
在调用 onServiceConnected()
之前完成,因为它依赖于 onCreate()
之后出现的 onBind()
的 return 值。您还可以在图表中看到 "Clients are bound to service".