一. 麦盖系XMPP?
1.XMPP (可扩展通讯和表示协议)
2.XMPP是一个机遇XML的及时通讯协议, 官方文档定义了登陆, 获取好友, 发送消息等等的XML数据传输协议;
3.XMPP是一个典型的C/S架构, 基本的网络形式是网络客户端通过TCP/IP连接到服务器, 通过Socket立即连接, 然后在之上传输XML流.
4.XMPP是一种类似于HTTP协议的一种数据传输协议,其过程就如同"解压包 -> 包装"的过程. 只需要理解其接受的类型及返回的类型, 便可以很好的利用XMPP来进行教程通讯.
二. XMPP的实现原理
1.XMPP是一个即时通讯的协议, 它规范了用于即时通讯在网络上数据传输的格式,比如登录, 获取好友列表等等的格式, XMPP在网络传输的数据是XML格式
2.XMPP是一个基于Socket通讯的网络协议,目的是为了保持长连接, 以实现即时通讯的功能
3.XMPP的客户端是一个XMPPFramework框架实现.
4.XMPP的服务端是使用Openfire, 一个开源的服务器
5.客户端获取到服务器发送过来的好友消息,客户端需要对XML进行解析, 使用的解析框架的KissXML框架, 而不是NSXMLParser/GDataXML
三. 使用XMPP会遇到的问题
1. 发送附件(图片, 语音, 文档) 时比较麻烦
2. XMPP框架没有提供发送附件的功能, 需要自己实现
*实现方法:把文件上传到文件服务器, 上传成功后获取文件的保存路径, 再把附件的路径发送给好友.