在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中。
但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦。有没有什么办法可以简化对第三方库的管理呢?有!在使用SDWebImage这个第三方库的时候,我在学习如何将进度展现时,看到有人提到用CocoaPods(http://cocoapods.org/,需FQ) 来管理第三方开源库。
CocoaPods是管理Objective-c 程序中各种第三方开源库关联非常棒的方式,只要安裝好 CocoaPods,在自己程序的根目录下建立一份 Podfile 文字,在里面说明要使用哪些套件, CocoaPods 就会帮忙你搞定所有套件的相依性。
那现在我们学习如何使用CocoaPods吧。
安装
CocoaPods 是一个 Ruby 的 Gem,所以只要在 Terminal 下达安裝的指令:
1 2 | gem install cocoapods pod setup |
注:执行代码的时候你可能会觉得没反应,这里是需要时间的,耐心等待一下吧。
这样就安装好了,检查一下是否安装好了没,随便搜索一个第三方的开源库:
1 | pod search SDWebImage |
结果如下图所示:
没有报错误或其他什么的,说明CocoaPods安装成功。
好了,我们再看看怎么使用。
使用
比如你想使用SDWebImage这个开源库,你可以用上图的命令:pod search SDWebImage来搜索当前有多少个SDWebImage的版本及每个版本的相关信息。然后选择你需要的版本,将其添加到Podfile文件中。
将开源库添加到Podfile文件中有两种方法:
方法一(手动建Podfile文档):
- 你在你工程的根目录下新建一个名为Podfile的文本文档;
- 然后将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
- 保存,然后去掉文本文档的后缀名(有后缀会发生发错误,亲测)。
- 首先定位到你工程的根目录去(因为文档要建在这里);
- 然后编辑Podfile文档(Podfile存在则编辑,没有就会新建),将将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
- 保存。
1 2 | cd '你的工程根目录' #不要引号 ,打开你的根目录 vi Podfile #打开并开始编辑 |
如下图所示:
1 | pod install |
Tips:如果你引用的库很大,不需要所有的文件,可以这样写:
1 | pod 'Nimbus/Core' |
安装成功以后,你的工程跟木下会产生一个这样的文件:
确保以后就用这个文件来打开你的工程就行了。
pod spec create Peanut
edit Peanut.podspec
pod spec lint Peanut.podspec
When you’re done, please create a ticket and upload the pod. You can also fork theCocoaPods specs GitHub repository and send a pull request. We really love contributions!