利用XMPPFramework原生开发即时通讯(二)
上一篇讲到了如何集成第三方XMPPFramework框架,下面接着讲一下XMPPFramework 框架的内容:
首先我们打开文件包:
PS.一些用不着的文件我已经删掉了,不影响框架的使用,看起来更加美观.
乍一看这个框架就有七个文件夹,但是没关系,待我一一道来:
这样看起来似乎有点逻辑了,但是具体每个模块是做什么的呢,下面我们列出常用模块进行介绍:
首先是Authenticatic,即授权模块,这个是做登录相关操作,比如用户名密码等,当然前提是我们需要配置相应的服务器和数据库并进行绑定,可以去我的网盘下载,里面有本项目用到的其他安装包,openfire,mysql等<即时通讯工具集合>,对配置不太了解的可以看我另一篇介绍<配置openfire服务器和mysql数据库进行即时通讯测试>:
这么看其实还是比较模糊的,主要是先了解大致的逻辑,具体的使用建议关注我后面分享的demo案例.我们再看看Extension:
CoreDataStorage: coreData存储,可以配合mysql使用
Reconnect: 重新连接模块,可以设置重新连接的时间间隔等参数
Roster: 好友管理,添加好友等等操作,有数据表 XMPPRoster 用来管理用户,管理用户的类 XMPPUserCoreDataStorageObject
SystemInputActivityMonitor :系统输入的活动监控
还有很多XEP-xxx命名的文件夹,我想应该是作者也词穷了吧,直接把对应的模块用代码命名了.下面列出一些常用的:
下面我们打开xmppFramework.h文件,进去看到许多头文件,并且作者只帮我们默认打开了两个,剩下的一写都按照模块不同分别放在一起,我们需要的时候直接打开即可,具体模块有哪些功能用到的时候自然就清楚了,我这边介绍一下demo中需要用到的功能模块:
当然,使用之前建议创建自己的工具类进行管理:
部分方法实现如下:
首先创建创建单例管理类
然后开启我们需要的模块:当然使用这些模块之前我们先的初始化:
加载模块:
登录与注册,用户名就是JID,在使用openfire客户端操作时需要注意名称为:xxx@服务器名
代理方法:
最后是demo的整体架构
关于demo详细,会在下一篇进行详细介绍,敬请期待~