【发布时间】:2013-09-15 21:30:38
【问题描述】:
我目前正在开展一个项目,该项目需要服务器从当前连接到服务器的设备请求数据。意思是,首先服务器找出哪些设备连接到服务器,然后向客户端设备发送特定于应用程序的消息,该消息应该唤醒客户端上存在的某些功能。
我正在研究 XMPP 服务,它看起来很有希望,因为它可以用作 PUSH 通知。 XMPP 中的 可用于检查设备当前是否已连接并已订阅服务器。由于每个 android 用户都有一个 gmail 帐户,我正在考虑使用 gmail xmpp 服务来连接/订阅服务器。然后向客户端发送特定消息,即 x...@gmail.com。
但是,如果以这种方式发送消息,客户端应用程序会像本地 gtalk 客户端一样获取消息。那么我该如何截取它以使其不会显示在 gtalk 客户端上但我的应用程序仍然可以获取它?
【问题讨论】:
-
XMPP“推送”不一定有意义,因为如果您知道我的意思,XMPP 在技术上是一种连接协议。看看设置 XMPP 服务器并使用它和 aSmack 库。从您的问题中很难判断您是否有一种简单的方法来获取哪些客户端已连接,或者这是否是您的要求?它们是否连接到 XMPP 服务或其他一些 Web 服务/协议?您是否在服务器中实现了 XMPP 发送服务?
标签: java push-notification xmpp smack asmack