我有一个应用程序,其中主Activity启动一个AlarmReceiver,它调用在后台运行并执行操作的IntentService。我不清楚检查IntentService的操作的正确方法是什么,并在IntentService的当前状态下向最终用户提供他们所在的可见活动中的一些反馈。在我的理想世界中,屏幕上可以有一个图标,我可以将其设置为通知用户IntentService正在发生的事情。我不需要用户能够*做任何事情,只需要反馈。
欢迎所有建议。
答案 0 :(得分:4)
Android有一个通知API,它甚至易于使用 - Creating Status Bar Notifications。
如果您希望自己的活动从服务中接收更新,我建议您使用广播和broadcast receivers。
如何发送广播意图:
Intent i = new Intent("your.action");
sendBroadcast(i);
要在您的活动中接收此广播,您必须实施广播接收器:
private BroadcastReceiver myReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//
}
};
你必须注册......
registerReceiver(myReceiver, new IntentFilter("your.action"));