美文网首页xmppframeWorkiOS Developer
iOS手动导入XMPPFrameWork

iOS手动导入XMPPFrameWork

作者: 走在路上的小二 | 来源:发表于2016-11-24 09:09 被阅读1055次

    首先,在 Github 上把源码下载下来,地址是:XMPPFramework源码地址,进入wiki,里面介绍了 xmpp库所依赖的的第三方库:CocoaLumberjackCocoaAsyncSocketKissXML

    其次,把三个库的源码一一下载下来并且 copy 进…/XMPPFramework/Vendor/下,把/Vendor下面的/facebook-iOS-sdk文件夹删除,再把/XMPPFramework下面的不需要的东西删除,最后整个文件夹看起来像这样:

    接着,把XMPPFramework文件夹导入到工程中,再根据wiki的指示,添加必要的系统框架:CFNetwork.framework、Security.framework、Foundation.framework、CoreGraphics.framewordk、UIKit.framework、libxml2、libresolv。

    注:libxml2.dylib、libresolv.dylib Xcode 7.1 之后的版本是找不到的 通过工程里面 Project -> BuildSetting -> 搜索 Other Linker Flags 在Other Linker Flags 添加-lxml2和 -lresolv

    添加完之后编译一下,会有如下一些错误:

    错误①:Module ‘KissXML’ not found

    解决①:把所有的 @import KissXML; 都替换成 #import “KissXML.h”。

    继续编译则消除了之前的错误提示,紧接着又出现了新的

    错误②:’libxml/tree.h’ file not found

    解决②:这个是老错误了,在 Build Settings — Header Search Paths 添加/usr/include/libxml2 即可。

    继续编译,出现两个错误

    错误③:’CocoaAsyncSocket/GCDAsyncSocket.h’ file not found 或者 Module‘GCDAsyncSocket’ not found、’CocoaLumberjack/CocoaLumberjack.h’ filenot found,或者其他的类似找不到头文件。

    解决③:分别改成#import “GCDAsyncSocket.h” 和 #import“CocoaLumberjack.h”

    提示:如果编译中遇到 ‘xxx/xxx.h’ file not found,就替换成 xxx.h 即可。

    错误④:/XMPPFramework/Vendor/libidn/libidn.a(stringprep.o)' does not contain bitcode.

    解决④:选择项目属性中的”Build Settings“项 在搜索输入框中输入:bitcode,可以从设置中找到“EnableBitcode”项,它的默认值是Yes, 将Enable Bitcode项的值改成“No”,之后就能成功编译

    最后如果有XMPPFrame的Swift 文件错误,在Build Phases里面将Swift文件删除即可

    PS: 如有疑问,欢迎留言。

    相关文章

      网友评论

        本文标题:iOS手动导入XMPPFrameWork

        本文链接:https://www.haomeiwen.com/subject/hrlbpttx.html