从活动中调用服务方法而不绑定

时间:2015-06-11 12:01:37

标签: android aidl

我为我的应用程序运行了一个推送服务,负责保持TCP连接处于活动状态并在传入消息上创建通知。

即使活动已关闭,我也需要运行此服务,因此在线发布的解决方案是调用startService()而不是bind(),这确实解决了服务以活动销毁而终止的问题

但是如果没有Binder,我该如何调用我的服务方法?我设法开始工作的一种方法是BroadcastReceiver。是否有更简单的方法来实现这种行为?

1 个答案:

答案 0 :(得分:3)

添加您用来调用startService的操作,一个用于您要调用/处理的每​​个不同方法/案例,并在调用intent.getAction()时使用onStartCommand检索

来自startService

的文档
  

每次调用此方法都会导致相应的调用   目标服务的onStartCommand(Intent,int,int)方法,用   意图在这里给出。这提供了一种方便的方式来提交作业   服务,而不必绑定并调用其接口。