该onBind()
方法的"绑定"操作与仅调用onStartCommand()
有何不同?
onStartCommand()
"当另一个组件(例如活动)通过调用请求启动服务时,系统会调用此方法startService()
."
onBind()
当另一个组件想要通过调用与服务绑定(例如执行RPC)时,系统调用此方法bindService()
.
我想写一个聊天客户端服务,它接收来自多个用户的消息.哪种功能更合适?
onStartCommand()
当你Service
开始工作时,会调用第一个().onCreate()
已经完成,并准备好做需要做的事情.
onBind()
当另一个线程注册连接到服务以便它们可以通信时,将调用第二个().您可以在此处配置或设置通信方式,例如接口验证或回调注册活动.
绑定允许您将服务绑定到例如活动的生命周期.如果活动完成,则允许释放服务并自行完成.只要有一些东西仍然存在,服务将持续.