一、功能:通过Podfile文件自动下载第三方库代码,并设置好系统依赖和编译参数
二、安装:
1、使用Mac自带的ruby的gem命令下载CocoaPods
$ sudo gem install cocoapods
2、使用CocoaPods的镜像索引提高下载速度(可跳过)
$ pod repo remove master
$ pod repo add master https://gitcafe.com/akuandev/Specs.git
$ pod repo update
3、安装CocoaPods
$ pod setup
三、使用:
1、查看某个第三方库是否在CocoaPods管理的库中
$ pod search json
2、在项目根目录下创建Podfile文件,将依赖库依次列入文件中,文件格式如下:
platform :ios
pod 'RegexKitLite', '~> 4.0'
pod 'AnyJSON', '~> 0.1.0'
3、执行以下命令后,第三方库都会下载并设置好编译参数和依赖
$ cd “your project root”
$ pod install
4、改用新生成的*.xcworkspace文件打开工程
5、更改第三方库依赖时,先修改Podfile文件,再执行以下命令
$ pod update
四、为自己的项目创建podspec文件:
参考博文《如何编写一个CocoaPods的spec文件》和《CocoaPods入门》
五、使用私有pods:
通过直接指定某个依赖的podspec来使用私有库:
$ pod ‘MyCommon’, :podspec => ‘https://yuantiku.com/common/myCommon.podspec'
六、不更新podspec:
CocoaPods在执行pod install和pod update时,会先默认更新依次podspec索引,如果不想更新可执行以下命令:
$ pod install --no-repo-update
$ pod update --no-repo-update
七、生成第三方库帮助文档
用brew安装appledoc:
$ brew install appledoc
八、原理
1、CocoaPods会将项目中所有依赖库放到一个名为Pods的项目中,该项目负责管理所有第三方库,Pods项目会自动编译为libPods.a这个静态库,主项目会自动依赖这个libPods.a库。
2、CocoaPods通过文件Pods.xxx.xcconfig在编译时设置所有依赖和参数。
3、CocoaPods通过脚本Pods-resources.sh在编译时将第三方库的资源文件复制到目标目录中