我想使用XMPP,以便我的应用程序将更新发送到Android手机(1.5及更高版本)。我非常想用XMPP向手机发送推送通知。
我将如何实现这一目标。目前我的web应用程序正在运行apache tomact with a many servlet,因此android手机可以访问信息,但我发现很难理解如何实现XMPP以便我可以将信息从服务器推送到客户端( android手机)。
我测试了以下教程 Example of XMPP with Google ID login
它使用Google ID登录。但我需要使用我的webapplication来做谷歌实现的。 有什么想法吗?
答案 0 :(得分:13)
这取决于推送的性质(是点对点还是发布子)。在任何一种情况下,您都需要一个客户端和应用程序连接的XMPP服务器。这将是您的应用程序向客户端发送通知的方法。
不确定您的意思"我需要将我的网络应用程序用于Google实施的内容"。您的web应用程序将成为xmpp服务器的客户端,就像您的手机一样。您不能使用xmpp简单地与您的web应用程序通信,除非它恰好是支持波什的xmpp服务器本身,我猜这不太可能。
您可以使用Smack进行客户通信,也可以使用many available servers中的任何一个。
如果通信针对特定客户端,则在应用程序和客户端之间创建chat可能是最简单的方法。如果它更像是广播,那么您可以使用MUC (multi user chat)或pubsub。
答案 1 :(得分:2)
通常,您可以将其实现为pub-sub功能。 Pub-sub基本上是发布/订阅范例:你发布了一些内容并且他们收到了它。
假设您有一个支持pub-sub协议扩展(如eJabber)的XMPP服务器设置,您将在应用程序中登录该服务器并订阅一个节点(将发送更新通知的地方),并且在您的订阅中,您必须添加处理程序来处理该节点上的任何通知。
在服务器端,当您拥有所有客户需要了解的内容时,您可以将更新发布到客户端订阅的同一节点。
有关详细信息,请参阅http://xmpp.org/extensions/xep-0060.html