java - 谷歌云消息 : BroadcastReceiver or Service?

标签 java android

在当前状态下使用 GCM 的普遍首选方法是什么?

documentation只谈论将它与 BroadcastReceiver 一起使用,并且只在一句话中提到 Services 而没有进一步解释。

在我的应用程序中,我需要能够对未知数量的连续 GCM 消息使用react并将它们排队,以便我可以一条一条地处理它们。需要完成此处理才能接收到消息。

这不能用 BroadcastReceiver 来完成,因为对于接收到的每个广播,都会创建一个我的接收器类的新实例(这是我根据入门指南首先尝试的方法)。是否可以通过服务来完成,或者更准确地说,我的服务实例是否保留在收到的消息之间?

如果是这样,该服务需要何时以及如何启动、添加到 list 等?

我不需要与我的主应用程序/UI 交互。该服务可以自行开展业务。

最佳答案

GCM 消息以广播形式出现,因此您必须使用 BroadcastReceiver。如果您出于任何原因需要排队。只需让您的 BroadcastReceiver 将消息传递给 IntentService 或您认为适合您的任务的任何其他内容。

关于java - 谷歌云消息 : BroadcastReceiver or Service?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17952483/

相关文章:

java - OnPrimaryClipChangedListener 不工作

android - 在 Fragments 中使用 View 绑定(bind)在哪里更好? (onCreateView 与 onViewCreated)

java - AWS API Gateway 集成响应

java - 当我的发射序列太小时,我的 hmm 中的状态转换概率和发射概率收敛到 nan

java - BlazeDS自定义序列化导致RangeError

android - 如何在android中离线获取纬度和经度?

java - 如何创建意见箱

Java SOAP "wsimport"- 从文档/文字包装的 WSDL 强制包装绑定(bind)?

c# - Android和C#之间的加密

android - 如何在 ScrollView 中实现弹跳?