环境:

Xcode 8.2.1

XMPPFramework 3.6.5 (下载地址)

Objective-C (项目使用的语言,最新版的3.7.0要求convert to swift)

1.下载XMPPFramework框架,链接地址在上面,下载完解压过后如下图所示:

2.将解压后的文件夹拖到项目工程中,删除多余的文件(红色框框中的都选中,右键delete,然后Remove To Trash)

删除Xcode文件夹中的内容(这个文件夹中的内容是测试的文件),修改Sample_XMPPFramework.h的名字为XMPPFramework.h  ,修改完文件目录结构如下:

3.添加系统库文件。

. 在Build Setting 搜索Header Search Paths 添加头文件搜索路径:/usr/include/libxml2
. 在Build Phasses 添加2个动态链接库:libxml2.dylib libresolv.dylib
. 在Build Setting 搜索prefix 在Prefix Header中添加$SRCROOT/$(项目名称)/PrefixHeader.pch 添加pch文件
4. 导入UIKit,导入XMPPFramework.h

4.build项目,发现100多个错误。。。

5.修改User Header Search Paths

User Header Search Paths = $(SRCROOT)   // recursive.

如果却少上面那一步,会报错,截图如下。

6.重新Build发现还是一大堆错误,不过这次的错误可以修改。

由于id类型的对象无法获取tag值,所以需要将方法签名中的id改成UIButton *类型。

修改过后,错误就消失了,同理把所有的类似的错误都改掉,就可以运行了。

手动导入XMPPFramework框架的更多相关文章

  1. (六十七)Xcode导入XMPPFramework框架

    首先下载XMPPFramework框架,将Vendor内容导入到工程中,其中KissXML需要额外的框架,需要通过Xcode设置. 选择工程选项中TARGETS的General标签,最下侧有Linke ...

  2. xmpp整理笔记:xmppFramework框架的导入和介绍

    一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失. xmpp中最常用的框架就是 xmppFrameWork 往期回顾: xmpp整理笔记:环境的快速 ...

  3. ios xmppFramework框架的导入步骤和介绍

    一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失. xmpp中最常用的框架就是 xmppFrameWork 第一种方法直接拖 1> 拖入文件夹 ...

  4. swift项目导入OC框架

    手动导入框架步骤: 1.将框架拖入项目 2.新建桥接文件 3.build setting->bridge  添加桥接文件路径,相对项目而言

  5. 手动导入xmpp后,再使用cocoapods的时候出现的问题

    最新的cocoapod导入xmpp的时候,会出现循环依赖,所以撸主选择了手动导入. 一开始还用的挺开心的,后来,使用cocoapods导入其他的框架,发现调用的时候总是报错. Undefined sy ...

  6. 在MEF中手动导入依赖的模块

    对于简单的场景来讲,在MEF中导入依赖模块非常简单,只要用ImportAttribute标记依赖的成员,MEF模块会自动找到并创建该模块.但有的时候我们依赖的模块是上下文相关的,此时MEF框架的自动组 ...

  7. 最新版CocoaPods的使用与安装-以导入ReactiveCocoa框架为例

    一.什么是CocoaPods?前言: 思考如何引入一个第三方框架. 例如: 百度地图SDK.友盟.ShareSDK. 信鸽推送等.从github或某处下载第三方SDK工程中导入所需要的SDK的文件 . ...

  8. eclipse中手动导入DTD文件的方式

    DTD一般应用在应用程序中定义数据交换类型的文档,一般用在xml配置文件中,有些时候在eclipse中并不能加载一些提示,这个时候需要手动导入,导入方法如下: 1.首先根据声明的网址下载.dtd的文件 ...

  9. 通过pod导入第三方框架

    项目导入第三方框架的时候,如果直接拖到项目中的话还需要去修改某些设置以及导入头文件等,当项目比较大的时候这个方法就比较笨拙了,我们可以通过pod来简化这写流程: 在使用pod之前我们需要安装Cocoa ...

随机推荐

  1. zoj 2362 Beloved Sons【二分匹配】

    题目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2361 来源:http://acm.hust.edu.cn/vjudg ...

  2. Java NIO Buffer(netty源码死磕1.2)

    [基础篇]netty源码死磕1.2:  NIO Buffer 1. Java NIO Buffer Buffer是一个抽象类,位于java.nio包中,主要用作缓冲区.Buffer缓冲区本质上是一块可 ...

  3. xcode6

    官方的xcode6下载太慢,这里送上百度网盘地址: http://pan.baidu.com/s/1hqze1hi

  4. python __nonzero__方法

    类的nonzero方法用于将类转换为布尔值.通常在用类进行判断和将类转换成布尔值时调用.比如语句if A: print 'foo'中就会调用A.nonzero()来判断.下面这个程序应该能帮助你理解n ...

  5. 华为机试ACM(字符组合问题)

    今晚做了华为的机试,3道ACM题,最后一道是实现从M个不同字符中任取N个字符的所有组合. eg: input:ABC 2 output:AB AC BC 第一个输入为字符串,第二个输入为组合的字符个数 ...

  6. 读paper:Deep Convolutional Neural Network using Triplets of Faces, Deep Ensemble, andScore-level Fusion for Face Recognition

    今天给大家带来一篇来自CVPR 2017关于人脸识别的文章. 文章题目:Deep Convolutional Neural Network using Triplets of Faces, Deep ...

  7. appium 移动web样例脚本

    简单介绍 这是一个使用appium操作移动端chrome浏览器的样例程序. 样例程序 脚本实现的功能是:打开浏览器-->跳转到百度首页-->输入appium-->点击搜索按钮--&g ...

  8. IM系统中如何保证消息的可靠投递(即QoS机制)(转)

    消息的可靠性,即消息的不丢失和不重复,是im系统中的一个难点.当初qq在技术上(当时叫oicq)因为以下两点原因才打败了icq:1)qq的消息投递可靠(消息不丢失,不重复)2)qq的垃圾消息少(它an ...

  9. 小程序连接百度ai

    function getTextFromImage(res) { var access_token = '24.c649256d2e*****0.282335-11449805'; var url = ...

  10. rails 字符串 转化为 html

    simple_format http://apidock.com/rails/v4.0.2/ActionView/Helpers/TextHelper/simple_format http://api ...