在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时我们就需要一个包管理工具,在iOS开发中,我们使用最多的就是Cocoapods。
Cocoa是开发OS X下的苹果提供的API,Cocoa Touch是开发iOS触摸类设备的API。比如我们在开发iOS中,常常需要新建一个类,就是用Cocoa Touch Class来进行新建的。在本篇博客中我们将会讨论包管理工具Cocoapods的安装与使用。
【一】Cocoapods的安装
(1)Cocoapods的官方网站为: https://cocoapods.org/ 。如果你的电脑已经安装了Ruby开发环境,那么在终端(Terminal)中使用以下命令即可直接安装:
- sudo gem install cocoapods
(2)如果你的电脑还没有安装Ruby环境,请看以下步骤:首先安装RVM,即Ruby的虚拟机,类似JVM,执行如下命令即可:
1. curl -L https://get.rvm.io | bash -s stable
(3)重新载入RVM,或者重开终端Terminal也可:
- source ~/.rvm/scripts/rvm
(4)检查RVM是否安装成功,并查看RVM的版本:
- rvm -v
(5)然后使用RVM安装Ruby环境:
- rvm install 2.0.0
(6)查看Ruby的版本:
- ruby -v
(7)安装Ruby的时候默认会安装gem,我们也可以查看gem的版本:
- ruby -v
(8)下面开始安装Cocoapods,由于有墙,所以我们要修改Ruby的镜像,恰巧某宝提供了这个镜像:首先移除原来的镜像:
- gem sources --remove https://rubygems.org/
如果gem太老,可以尝试使用如下命令升级gem:
$ sudo gem update --system
(9)然后增加新的镜像:
- gem sources -a http://ruby.taobao.org/
(10)查看当前的Ruby镜像,如果显示是taobao.org就可以了:
- gem sources -l
(11)这是最后一步,安装cocoapods:稍等片刻就可以了;
- sudo gem install cocoapods
【二】Cocoapods的使用
(1)首先建立一个iOS项目,我以Swift语言为例,我取名为CocoapodsDemo。当前的目录结构如下:
。
(2)在终端下进入这个项目的根目录,使用vim创建一个Podfile文件,如图:注意,这个名字一定要是Podfile,不能是其他名字!!!
.
(3)然后在Podfile中输入如下代码,其中我以AFNetworking为例:保存退出。
注意:这里可以直接写:
platform :ios
pod 'AFNetworking'
也就是说ios后面可以不加版本号,ios三个字母都必须是小写,不能写成“iOS”!!!
还有就是冒号和ios之间是没有空格的!!!!!
。
(4)然后仍旧是在项目根目录下执行如下命令:结果如图:
- pod install
。
小提示:如果我们需要查看某个第三方包的信息,或者对某个包不太清楚时,可以使用如下命令:
pod search AFNetworking
就可以打印出如下信息了:
(5)然后在终端中提示以后要用***.xcworkspace来打开项目,所以我们关闭之前的Xcode,来到项目根目录下,打开CocoapodsDemo.xcworkspace,然后就打开了项目,此时发现项目结构已经变成了这样:
。
(6)当每次更改了Podfile文件后,都需要执行pod update命令。
当执行pod install之后,除了Podfile,还会生成一个Podfile.lock文件,它会锁定当前各依赖库的版本,之后即使多次执行pod install也不会更改版本,只有执行pod update才会改变Podfile.lock。在多人协作的时候,这样可以防止第三方库升级的时候造成大家各自的第三方库版本不一致。所以在提交版本的时候不能把它落下,也不要添加到.gitignore中。
执行完以上部分, cocoaPod已经全部安装完成.