android - 当应用程序未运行时如何通知用户收到的 GTalk 聊天记录

标签 android xmpp smack asmack google-talk

我使用 GTalk 服务器和 (a)Smack 库实现了一个聊天客户端。到目前为止,一切都很好。现在,我无法解决的是如何在应用程序关闭时通知用户收到的聊天内容,就像所有其他聊天应用程序一样。我正在阅读推送通知,但我发现的所有示例也都有一个服务器组件,显然我没有,因为我的应用程序只是 GTalk 的客户端。

我应该使用 GCM 并为此实现服务器端吗?我是否应该尝试启动一个在启动时监听传入消息的服务(类似于 this example )?

最佳答案

服务绝对是最佳选择,您可以保持它运行,以便您的 XMPP 连接保持打开状态。

您可以从服务器接收消息,并通过广播接收器,如果应用程序关闭,您可以显示通知,打开应用程序时,您可以禁用以前的广播接收器,并注册一个新的广播接收器来管理 Activity 中的消息,例如.

这几乎是我的实现。

赞赏!

享受

关于android - 当应用程序未运行时如何通知用户收到的 GTalk 聊天记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27762268/

相关文章:

java - 为 RecyclerView 中的某些行禁用 ItemTouchHelper Swipe

java - 更改 AutoCompleteTextView 的值

使用 WHERE 子句的 Android sql 查询大于

android - 在 Firebase onDataChange 中返回一个值

Android 无法在屏幕上显示所有图像?

java - 尝试使用 Smackx pubsub 获取节点时出现 item-not-found(404)

java - 无法使用 aSmack 和 Openfire 保存 VCard

java - 无法执行操作,因为 localhost 不提供 MUC (XEP-45) 服务

android - 在移动设备(例如 Android)上使用 XMPP 时 ping 服务器的频率是多少?

iphone - iPhone 的 XMPPRoster 示例?