升级Xcode8以后 XMPP 遇到重定义的问题 Redefinition of module 'dnssd'

在升级Xcode以后,原来的关于XMPP的项目运行报错,错误信息为: Redefinition of module 'dnssd'ios

系统和XMPP框架同时用到了 'dnssd',大概就是错误的缘由。git

网上关于这方面的信息很少,可是仍是在 stackoverflow 中找到了一些信息,原文连接:http://stackoverflow.com/questions/39930741/redefinition-of-module-dnssd-in-swift-3。github

解决方案:# The version pushed to CocoaPods is very out of date, use master branch for now 
pod 'XMPPFramework', :git => "https://github.com/robbiehanson/XMPPFramework.git", :branch => 'master'
#pod 'XMPPFramework',大概意思是须要更新XMPP框架,须要把podfile文件中的 "pod 'XMPPFramework',        '~> 3.6.6'  "用 " # The version pushed to CocoaPods is very out of date, use master branch for now
pod 'XMPPFramework', :git => "https://github.com/robbiehanson/XMPPFramework.git", :branch => 'master'
# pod 'XMPPFramework' " 来替换或者直接改为 "pod 'XMPPFramework',        '~> 3.7.0'  "swift

 

在pod update的过程当中有的童鞋会遇到下面这样的错误:框架

这个是由于更新的XMPP框架中支持的最低版本为iOS 8.0 / macOS 10.8.spa

The minimum deployment target is iOS 8.0 / macOS 10.8..net

全部须要把podfile中的 "platform:ios,"7.0" " 7.0改成8.0以上。code

等了很久终于等到pod更新完成了,但是运行项目又出现了一堆错误,不,是一大堆错误。orm

别着急,pod更新以后会遇到这种问题,到报错的工程里面搜一下Enable Strict Checking of objc_msgSend Calls,改为相反的值就好了,别改没有报错的工程。dns

改完以后的错误明显减小了,但是仍是有错误,以下:

Module 'KissXML' not found 找不到了,解决方案是用 #import "DDXML.h" 替换 @import KissXML;

这个替换完了还有错误

CocoaAsyncSocket 又找不到了...,这里用@class GCDAsyncSocket; 替换@import CocoaAsyncSocket;

 

到这里就改完了。

 

欢迎你们一块儿交流 QQ群 139852091

相关文章
相关标签/搜索