我有一个工作正常的广播接收器,但现在我想发送通知到状态栏。由于BroadcastReceiver无法直接执行,看起来我需要创建一个服务来为我做正确的事情吗?
所以我使用http://developer.android.com/reference/android/app/Service.html
提供的示例创建了一项服务除了一些小的调整之外,它就是那个代码。我从广播接收器开始服务 context.startService(new Intent(context,AlertUser.class));
它发生了什么,它确实在状态栏中输出了msg。然后,当我做了一个清除并生成一个新的msg服务代码没有执行。一旦开始,我是否与他的服务互动?从我读到的内容来看,如果是同一个过程的一部分。
另外,我如何将来自BroadcastReceiver的字符串信息共享到服务中,以便在通知中显示信息?
谢谢,
谢
答案 0 :(得分:0)
由于BroadcastReceiver不能直接执行,看起来我需要创建一个服务来为我做正确的事吗?
BroadcastReceiver
可以显示Notification
。
一旦开始,我是否会以不同的方式与他进行互动?
不是真的。如果您通过startService()
向服务发送命令,则onStartCommand()
会收到这些命令。
我如何将来自BroadcastReceiver的字符串信息共享到服务中,以便将信息显示在通知中?
将Intent
传递给startService()
,将其传递给Intent
,并将其从onStartCommand()
中的{{1}}中检出。