在不使用持久服务的情况下在后台获取XMPP消息

时间:2014-04-29 04:34:59

标签: android android-service smack asmack

我正在尝试使用Smack Library构建IM。我做得正确,它在前台工作正常,我可以启动一个STICKY服务,可以在后台查找消息。我的问题是我不想在后台使用持久服务,因为它会占用Android设备的电池,而是当XMPP消息带有一些事件时,我希望激发一些广播。

有什么办法可以实现这个目标吗?我试过用搜索词查找示例,但我没有找到任何内容,所以我没有在这个特定的上下文中实现任何排序,所以没有任何相关的代码。

1 个答案:

答案 0 :(得分:0)

我认为这一切都取决于你想要存档的内容。

如果您需要在2个客户端联机时快速直接到达消息,我认为持久服务是smack xmpp的唯一解决方案。通过可靠的代码开发,它不应该耗费太多电池......

如果你真的不在乎消息是否在2分钟后到达,你应该使用一个intentservice(connect / get messages / disconnect)&只要应用程序正在运行,计时器(例如每2分钟)。

您所描述的内容(某些广播在消息发布时会被触发)与Google云消息传递等PUSH机制更相似......