从onReceive()返回后,BroadcastReceiver不再存在 活跃,其托管过程与其他任何一样重要 在其中运行的应用程序组件。这是特别的 重要的是因为如果那个过程只是托管的那个 BroadcastReceiver(用户拥有的应用程序的常见情况) 从来没有或最近没有与之互动过,然后从...返回 onReceive()系统会认为它的进程是空的 积极地杀死它,以便资源可用于其他更多 重要的过程。
这意味着对于长时间运行的操作,您通常会使用a 与BroadcastReceiver一起服务以保持包含 在整个操作过程中处于活动状态。
以上文字摘自android site。但我无法找到如何将服务与BroadcastReceiver结合使用。有人可以分享这个或任何例子的链接吗?
我找到了这个链接 - stackoverflow。这是正确的做法吗?
答案 0 :(得分:1)
BroadcastReceiver是您可以在服务和应用程序/活动之间建立通信的一种方式。基本上,服务可以向您的活动发送广播,然后您的活动将处理onReceive()内所需的任何内容。
在您的服务中,您将使用具有特定意图动作的意图发送广播,在您的活动中,您将使用相同的操作注册接收者。这样,当您发送广播时,您的活动就可以接收它。
一个很好的例子/起点:(查看第7节的完整代码示例) http://www.vogella.com/articles/AndroidServices/article.html
祝你好运!