zoukankan      html  css  js  c++  java
  • iOS开发--XMPPFramework--框架的导入(二)

    创了一个XMPP即时通讯交流群140147825,欢迎大家来交流~我们是一起写代码的弟兄~

    xmpp协议开发即时通讯,最常用的就是XMPPFramework。

    第一种方法,是直接拖进项目

    1、可以下载Demo,从Demo中拖,也可以下载XMPPFramework框架。

    重要的就是这几个文件夹还有XMPPFramework.h和XMPPConfig.h这两个文件。

    2、在Linked Frameworks and Libraries中添加一些必要的框架

     CFNetwork.framework

        Security.framework

        libxml2.dylib

        libresolv.dylib

      libin.a

    3、修改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"

    配置到这里,就可以啦

    下面介绍一下框架结构,共有这么几个文件夹

    Authentication    授权,身份验证

    Categories         分类

    Core                  核心

    Extensions         扩展

    Utilities              工具

    Vendor              第三方库

    1、在Extensions中:

    CoreDataStorage   coreData存储

    Reconnect         重新连接

    Roster               好友管理

                            有数据表 XMPPRoster 用来管理用户

                            管理用户的类 XMPPUserCoreDataStorageObject

    SystemInputActivityMonitor     系统输入的活动监控

    2、在core中:

    XMPPElement        是一个基类 ,延展出三个子类

    XMPPIQ         请求 (用户登录,用户注册,添加好友等)

    XMPPMessage    消息(用来发各种消息等)

    XMPPPresence    展现(用户上线下线提示等)

    XMPPStream    流,非常常用,大部分类的加载都在写在流的懒加载里

    3、在vender中:

    kissXML     用于xml的主要解析框架

    下一篇将向大家介绍用户登录的相关内容,正式进入敲代码环节。

    创了一个XMPP即时通讯交流群140147825,欢迎大家来交流~我们是一起写代码的弟兄~

  • 相关阅读:
    RabbitMQ高级部分
    深入了解RabbitMQ
    js控制mui-popover弹出与关闭及移动网盘分享文件格式
    Hbuilder页面之间的跳转及关闭功能
    页面下载远程服务器单个及多个文件并打成压缩包下载到本地
    手机端下载文件及创建文件夹
    input上传文件对象
    上传文件解决获取multi=JakartaMultiPartRequest问题
    jsp页面选择文件上传,获取不到绝对路径问题
    activiti官网实例项目activiti-explorer之扩展多选框回显功能
  • 原文地址:https://www.cnblogs.com/FrankieZ/p/5280132.html
Copyright © 2011-2022 走看看