服务如何无限运行并允许在Android中绑定?
我想要一个可以在后台运行的服务,直到我停止,即使启动它的组件被破坏,并且还允许绑定到活动。这怎么可能?
根据android绑定服务文档 - 有三种方法可以创建绑定服务
- 扩展 Binder 类。
- 使用信使。
- 使用 AIDL。
我使用信使(第二种方法)创建了一个绑定服务。活动在其 onStart() 方法中绑定到服务,并在其 onStop() 方法中解除绑定。双向消息传递(在活动和服务之间)工作正常。但问题是,当活动解除绑定服务时,服务就会被破坏。但是我想要一个可以无限期运行的服务。
android Services Dev Guide - “虽然本文档通常分别讨论这两种类型的服务,但您的服务可以双向工作 - 它可以启动(无限期运行)并且还允许绑定。这只是一个你是否实现几个回调方法的问题:onStartCommand()允许组件启动它,onBind()允许绑定。
我还在服务中实现 onStartCommand() 方法并返回START_STICKY,但它从未被调用。纵观开发指南中界定服务的生命周期回调,没有 onStartCommand() 回调方法。那么,在我们停止并允许绑定之前,如何运行服务呢?
我在 fedora 15 OS 中使用 eclipse 平台。
任何帮助.....