一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失。
xmpp中最常用的框架就是 xmppFrameWork
第一种方法直接拖
1> 拖入文件夹
在网盘链接的xmppFramework文件夹 :http://pan.baidu.com/s/1jGxLa3G
也可以直接去github搜索下载。
2> 拖入Sample_XMPPFramework.h,重命名为XMPPFramework.h
3> 添加框架
CFNetwork.framework
Security.framework
libxml2.dylib
libresolv.dylib
libin.a
4> 修改Build Settings
Header Search Paths
添加 "/usr/include/libxml2"
Other Linker Flags
添加 "-lxml2"
Library Search Paths
将"$(PROJECT_DIR)/01-仿QQ/Lib/XMPP/Vendor/libidn"
修改为"$(PROJECT_DIR)",并改为"recursive"
5> 修改XMPP/Core/XMPP.h
在文件顶部添加"#import <UIKit/UIKit.h>"
第二种方法cocoapods
就是使用cocoapods 可以一次性导入,并且也不需要上述的配置和调整。并且以后更新框架的时候一个pod update完事。
但是有一个很严重的问题。就是你在导入框架pod install的时候会报错,出现一个 circular dependency 就是循环依赖。这是cocoapods的版本问题,cocoapods0.35版本会对xmppFramework框架造成循环依赖,解决的方法就是,将cocoapods的版本降到 0.34.4
终端操作指令如下:
1.卸载cocoapods
$ sudo gem uninstall cocoapods
2.安装xcodeproj
$ sudo gem install xcodeproj
3.安装指定版本0.34.4的cocoapods
$ sudo gem install cocoapods -v 0.34.4
但是这样很不爽啊,因为往后swift什么的编程全都需要cocoapods的版本保持最新0.35 甚至0.36. 所以这个降版本非常蛋疼,两种方法都能用。具体使用哪种,可根据自己喜好决定。反正我是选了第一种。
框架内的大致介绍
Authentication 授权,身份验证
Categories 分类
Core 核心
Extensions 扩展
Utilities 工具
Vendor 第三方库
在Extensions中:
CoreDataStorage coreData存储
Reconnect 重新连接
Roster 好友管理
有数据表 XMPPRoster 用来管理用户
管理用户的类 XMPPUserCoreDataStorageObject
SystemInputActivityMonitor 系统输入的活动监控
常用的模块:
XEP - 0009 RPC(类似黑客技术)
XEP - 0012 最后的活动(判断上线,离开断开)
XEP - 0045 多人聊天
XEP - 0054 名片-个人信息设置
XEP - 0065 sockets5字节流
XEP - 0066 二进制数据传输(特殊信息的发送)
XEP - 0085 聊天状态通知
XEP - 0136 聊天记录归档
其中有数据表 XMPPMessageArchiving
取出当前信息的类 XMPPMessageArchiving_Message_CoreDataObject
XEP - 0153 基于名片的头像
XEP - 0199 xmpp ping (用来ping服务器和ping自己)
XEP - 0335 json容器(可能以后某些信息传输将用json格式)
在core中:
XMPPElement 是一个基类 ,延展出三个子类
XMPPIQ 请求 (用户登录,用户注册,添加好友等)
XMPPMessage 消息(用来发各种消息等)
XMPPPresence 展现(用户上线下线提示等)
XMPPStream 流,非常常用,大部分类的加载都在写在流的懒加载里
在vender中:
kissXML 用于xml的主要解析框架
ios xmppFramework框架的导入步骤和介绍的更多相关文章
-
xmpp整理笔记:xmppFramework框架的导入和介绍
一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失. xmpp中最常用的框架就是 xmppFrameWork 往期回顾: xmpp整理笔记:环境的快速 ...
-
ASIHTTPRequest 框架的导入
刚接触ios 对一切都不熟悉 记录一下ASIHTTPRequest 框架的导入 步骤 以便日后再用 1.首先下载ASIHTTPRequest:点击下载 2.在project中导入下面文件: 导入方式 ...
-
李洪强iOS开发之-环信02_iOS SDK 介绍及导入
李洪强iOS开发之-环信02_iOS SDK 介绍及导入 iOS SDK 介绍及导入 iOS SDK 介绍 环信 SDK 为用户开发 IM 相关的应用提供的一套完善的开发框架.包括以下几个部分: SD ...
-
iOS 常用框架介绍
iOS框架介绍 Cocoa Touch GameKit 实现对游戏中心的支持,让用户能够在线共享他们的游戏相关的信息 iOS设备之间蓝牙数据传输 从iOS7开始过期 局域网游 ...
-
ios中框架介绍
ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...
-
(六十七)Xcode导入XMPPFramework框架
首先下载XMPPFramework框架,将Vendor内容导入到工程中,其中KissXML需要额外的框架,需要通过Xcode设置. 选择工程选项中TARGETS的General标签,最下侧有Linke ...
-
手动导入XMPPFramework框架
环境: Xcode 8.2.1 XMPPFramework 3.6.5 (下载地址) Objective-C (项目使用的语言,最新版的3.7.0要求convert to swift) 1.下载XMP ...
-
iOS开发UI篇—常见的项目文件介绍
iOS开发UI篇—常见的项目文件介绍 一.项目文件结构示意图 二.文件介绍 1.products文件夹:主要用于mac电脑开发的可执行文件,ios开发用不到这个文件 2.frameworks文件夹主要 ...
-
swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程
swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 1.2.3 注册非免费苹果账号swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 免费的苹果账号在 ...
随机推荐
-
SQL Server 数据库巡检脚本
--1.查看数据库版本信息 select @@version --2.查看所有数据库名称及大小 exec sp_helpdb --3.查看数据库所在机器的操作系统参数 exec master..xp_ ...
-
Apache https 配置指南
Windows Apache HTTPS配置创建下面3个目录: C:\Program Files\Apache Group\Apache2\conf\sslC:\Program Files\Apach ...
-
MarkDown基础使用教程-by sixleaves
以下是个人浏览文档,结合自己平时使用所总结, 和引用国外关于如何使用markdown的教程.如有不足,还请海涵,期待于您的交流.我觉得使用markdown书写挺好的! 工具下载,可以去下载gitboo ...
-
Apache FtpServer 实现文件的上传和下载
1 下载需要的jar包 Ftp服务器实现文件的上传和下载,主要依赖jar包为: 2 搭建ftp服务器 参考Windows 上搭建Apache FtpServer,搭建ftp服务器 3 主要代码 在ec ...
-
Scripting Languages 簡介
Scripting Languages 簡介 何謂 Scripting? 命令稿語言 scripting language 是什麼? 很難給一個嚴格的定義; 不妨看看最具代表性的幾個例子: perl, ...
-
jumpserver修改默认管理员账号名
1.安装完毕jumpserver之后,默认管理员账号为admin 显然类似windows的administrator以及linux的root 把账号名改成别的 个人信息界面点击设置 修改为自己想要的用 ...
-
centos6 只安装mysql client(安装包安装和yum安装mysql)
方法一下载安装: 1.在/home创建mysql目录,下载如下四个软件包 http://mirrors.sohu.com/mysql/MySQL-5.7/ wget http://mirrors.so ...
-
oracle 转置实现
下面是3种方法 方法1:SYS_CONNECT_BY_PATH , ROW_NUMBER() OVER(PARTITION BY .. ORDER BY ..) , START WITH , C ...
-
Tomcat修改端口和编码配置
1.打开Tomcat中server.xml文件,找到原本的8080,修改成没被占用的端口: 2.在这个标签里增加 URIEncoding="utf-8",修改请求的编码.
-
js与jquery的动态加载脚本文件
jquery动态加载 jQuery.getScript(url,[callback]) js动态加载 function loadJs(name) { document.write('<scrip ...