集成CocoaPods的时候,遇到的坑及解决方法

集成CocoaPods的时候,遇到的坑及解决方法_第1张图片

我在CocoaPods集成SDWebImage后,然后在代码中运用了 SDWebImage的方法,然后,程序就出现了如上图的崩溃信息,说找不到该方法。 注意这个时候,

#import "UIImageView+WebCache.h" 是不会提示的。


这说明Xcode没有找到这个第三方库。 然后我就各种爬文,然后发现我在配置CocoaPods的时候,忽视了一个严重的细节。 

解决方法如下:

在target-Build Settings下修改“User Header Search Paths”项,新增${SRCROOT}并选择rcursive 选项 ,截图如下


集成CocoaPods的时候,遇到的坑及解决方法_第2张图片




现在就可以使用Cocoapods下载的相关库了。

如果在使用过程中出现  第三方库出错的解决办法

执行完pod install之后,控制台抛出以下警告信息:

[!] The use of implicit sources has been deprecated. To continue using all of the sources currently on your machine, add the following to the top of your Podfile:
source 'https://github.com/CocoaPods/Specs.git'

[!] The `ProjectName [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods/Pods.debug.xcconfig'. This can lead to problems with the CocoaPods installation

[!] The `ProjectName [Release]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods/Pods.release.xcconfig'. This can lead to problems with the CocoaPods installation
 
   
 
   

如果不解决此问题的话,会出现由于部分库文件找不到而导致的种种问题:

(1)编译失败,抛出Undefined symbols for architecture i386错误

(2)调用库中的方法,抛出unrecognized selector sent to instance错误

 

解决方法如下:

1、打开工程所在文件夹,找到.xcodeproj文件,右键选择【显示包内容】,找到project.pbxproj文件

2、打开project.pbxproj文件,查找OTHER_LDFLAGS,把和这个相关的内容都删除

3、重新执行pod install,此时应该就没有上面出现的警告信息了

4、编译并运行


注意: 一定要注意在 pod '第三方库' ,的时候,不要使用错了 引号, 是英文下的 单引号。


你可能感兴趣的:(IOS高级知识总结)