如果运行Android服务与活动交谈?

时间:2012-01-19 20:08:09

标签: java android service ipc

在我的Android应用程序中,我有一个通过AlarmManager启动的服务。我想要一个活动,显示该服务的一些进度/状态信息。由于我已经完成了90%的代码,并且服务工作正常,我想知道只有活动才能获得服务报告进度信息的最简单方法(如果可能)正在运行。

我看到了“绑定”但我认为只有当我想从我的活动启动服务并绑定到它时才可行。可能是广播接收器?

我希望能够经常报告状态更新,在某些情况下甚至可能每秒报告几次,所以我不想做像使用PreferenceManager那样的事情。

我的服务和活动是否在同一应用范围内运行?如果是这样,也许我可以创建一个单独的静态对象来共享状态信息?状态信息可以只是一个字符串,这就是我真正需要的。

1 个答案:

答案 0 :(得分:1)

您可以使用广播从您的服务“发出”数据。然后在您的Activity中为此同一事件提供BroadcastReceiver。当没有正在运行的活动响应该广播时,没有任何活动会收到它们。