XMPPFramework结构
在进入下一步之前,先给大家讲讲XMPPFramework的目录结构,以便新手们更容易读懂文章。我们来看看下图:
虽然这里有很多目录,但是我们在开发中只关心Core和Extensions目录下的类
- Authentication: 这一看名字就知道与授权验证相关的。
- Categories:主要是一些扩展,尤其是NSXMLElement+XMPP扩展是必备的。
- Core:这里是XMPP的核心文件目录,我们最主要的目光还是要放在这个目录上。
- Extensions:这个目录是XMPP的扩展,Extensions扩展里的功能都是独立的,如果需要使用到相关功能,是需要自己手动添加的。
- Utilities:都是辅助类,我们开发者不用关心这里。
- Vendor:这个目录是XMPP所引用的第三方类库,如CocoaAsyncSocket、KissXML等,我们也不用关心这里。
在这里我简单的介绍下核心的类
XMPPStream:是开发过程中最主要的交互类,所有扩展和自定义代码均要基于此类进行
XMPPParser:提供XMPPStream解析使用
XMPPJID:(用户的登录名(登录账号)就是以这个完成的)提供了一个不变JID的实现,遵守NSCopying协议和NSCoding协议
XMPPElement:以下三个XMPP元素的基类
- XMPPIQ: 请求
- XMPPMessage:消息
- XMPPPresence:出席
XMPPModule:开发XMPP扩展的使用
XMPPLogging:XMPP开发的日志架构
XMPPInternal:整个XMPP架构内部使用的核心和高级底层内容