XMPP服务器(Openfire)需要实现吗?

时间:2016-07-26 06:20:27

标签: android google-cloud-messaging xmpp

Openfire等XMPP服务器是否需要实现自己的服务才能处理消息。我是否需要PHP等Web语言才能使用Openfire处理消息?  因为根据这个帖子How to make Chat Application in Android Using XMPP and GCM,我不需要编写PHP脚本来处理消息,Openfire(它是一个XMPP服务器)将完成所有繁重的工作。那么在创建消息传递程序时,我唯一需要担心的是客户端代码?

我也遇到了相互矛盾的信息,希望有人能澄清一下。据我所知,需要在GCM旁边使用XMPP服务器;因为GCM在自己传递消息方面不可靠,并且要求XM​​PP服务器完全可靠。这是真的,上面的链接表明它不是,但根据这个是https://www.youtube.com/watch?v=5wXGcu9H91s

一些澄清会很棒,谢谢。

1 个答案:

答案 0 :(得分:0)

GCM允许您使用HTTP和XMPP将消息从应用程序服务器通过GCM发送到您的设备。

虽然只能使用XMPP,但您可以通过GCM从设备向服务器发送消息。这允许您的设备将确认消息发送回您的服务器。这并不一定使GCM更可靠,但它确实可以让您更好地审核设备实际接收的消息。

Openfire是一个支持XMPP的服务器,所以你仍然需要使用Smack来实现协议。

请注意,您可以跳过GCM并在您的应用和XMPP服务器之间直接建立连接,但不推荐这样做,因为您的应用必须经常连接到您的服务器,这对设备的电池来说非常困难。这就是GCM的用武之地,允许您的应用即使在后台但仍然对设备的电池很友好时也能接收消息。