Android服务 - 何时使用Context.bindService与Context.startService

时间:2014-02-02 21:46:08

标签: android service

任何Android专家都可以解释您何时使用

Context.bindService vs Context.startService启动服务?

1 个答案:

答案 0 :(得分:2)

来自Bound Services

的文档
  

绑定服务是客户端 - 服务器接口中的服务器。绑定服务允许组件(例如活动)绑定到服务,发送请求,接收响应,甚至执行进程间通信(IPC)。

换句话说,绑定到Service可以通过公Service中的IBinder方法通过ServiceConnection公开方法来实现双向互动。

相反,使用startService(...)执行更多的一次性操作。这只有在Service能够以自主方式工作时才真正有用,即,它知道它需要做什么,除了通过{{中传递的任何动作和/或数据之外,不需要进一步控制用来启动它。通常,以Intent开头的Service不会直接与启动它的组件(例如startService(...))通信。但是,它可以使用广播或创建Activity来发送操作的数据或结果。