在iOS开发中,我们难免会使用到第三方的开源库。每次下载第三方,导入系统的framework,第三方的版本更新都是非常麻烦的事情。那有没有一种简单的方式呢?这个当然是有的啦,那就是我们今天要分享的第三方管理工具cocoaPods,它可以让我们清楚的了解到第三方的各个版本,终端一个命令行可以让我们更新所有的第三方。好了,闲话少叙,下面就是配置步骤。
第一步:
打开Mac电脑终端(Mac电脑底部的Dock--->launchpad--->其他--->终端)
由于cocoaPods是用ruby实现的,所以我们需要为Mac电脑安装ruby环境,其实Mac系统在10.9.5之后已经自带了ruby环境,查看自带的ruby环境版本,直接在终端输入 ruby -v;为了防治未安装的情况,我们大家还是一起来一遍。ruby的默认源使用的是rubygems.org,在国内访问这个网站会非常慢,甚至出错,所以我们下面使用淘宝镜像来安装ruby环境。
第二步:
在终端输入 gem sources --remove https://rubygems.org/
每次输入完一行命令记得点击回车,由于我以前安装过cocoaPods或者系统版本关系,这里我点击完回车之后,会有source https://rubygems.org/ not present in cache这样一个回应,这个不影响。
第三步:
在终端输入gem sources -a https://ruby.taobao.org/
输入完之后,点击回车,我们会看到:https://ruby.taobao.org added to sources 这样一个回应,说明我们连接淘宝镜像正常。为了验证我们的淘宝镜像是否正常,可以在终端输入 gem source -l 如果正常 会看到
* CURRENT SOURCES *
https://ruby.taobao.org/ 这样一个回应。好了,接着进行下一步。
第四步:安装cocoaPods
在终端输入 sudo gem install cocoapods
这个时候会出现输入密码的提醒 password;这个时候输入电脑密码,在终端输入密码的时候,不会像我们平时的文本框一样,有显示输入的提醒。这里直接输入,输入完成密码点击回车就可以。如果密码输入错误,会有Sorry,try again.的提示。重新输入一遍密码即可。密码输入正确之后点击回车,如果无任何提示,那就请耐心等待,这里安装需要一个过程。成功之后,这里一般会有21个左右的安装成功的提醒,如果只有一个安装成功的提醒其他都是WARNING: Unable to pull data from 'http://ruby.taobao.org/': bad response Not Found 404 (http://ruby.taobao.org/latest_specs.4.8.gz) 有可能是电脑以前安装过。不影响。
好了,到此为止我们的cocoaPods已经配置成功,接下来就我们就看看如果在项目中使用。
首先,我们需要了解我们所需要的第三方在cocoaPods中到底能不能找到和它的一些基本信息。
在终端输入 pod search 第三方名称
稍等几秒钟我们可以看到该第三方的所有更新信息,一般第一个就是最新的版本。确定我们需要哪个版本之后,我们就可以进行下一步操作,为我们现有的项目导入第三方。
第一步:
通过终端打开一个已有的项目文件夹。在这里我的工程文件夹名称叫做TestCocoa。在终端先输入cd后面加一个空格,然后将文件夹拖入到终端,
会看到一个绿色的小加号,松开鼠标,点击回车键即可。这样就进入到了我们的工程文件夹中。
第二步:
创建本项目所需要的cocoaPods配置文件。在终端输入 vim podfile;这个时候我们会进入vim的操作界面。(vim 殿堂级的文本编辑器,有兴趣的可以了解下)。
进入到vim界面之后,我们点击 i 键这个时候我们可以看到界面底部出现 -- INSERT --,这个时候我们就可以输入了。假如我们的项目中需要使用AFNetworking,
就直接在该界面中输入 pod 'AFNetworking','~>3.0' 如果需要导入多个第三方 那么换行 接着输入 pod '第三方名称','~>版本'。
当将我们需要的第三方编辑完成之后,点击esc键,然后 shift+冒号,vim界面底部会出现冒号,这个时候我在底部输入wq(保存并退出的vim命令)。
第三步:
退出vim界面之后,我们又回到了终端界面,接着输入 pod install 命令即可。这个时候会出现Updating local specs repositories, 这是正在为项目导入所需第三方。需要等待一会,不要着急。成功之后,我们会看到Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.这里我只安装了一个第三方,所以是 1.
到这里我们通过cocoapods进行的第三方导入已经完成,打开我们的项目文件夹。会看到多了好几个文件。以后我们打开工程就点击后缀名为xcworkspace不要再使用原工程。
pod: command not found错误的解决方案之一
好了,可能有些同志的再输入pod命令的时候,会提醒 pod not found,这时候可能是权限问题。
在终端输入 sudo chmod +rx /usr/local/bin/,赋予赋予/usr/local/bin给予执行与读取权限。
接下来,我们说说如何删除已有项目中的cocoapods配置。
第一步
打开项目文件夹,将其中的pod file、podfile.lock、工程名.xcworkspace、pods文件夹删除。
第二步
用xcode打开工程名.xcodeproj文件,选中工程名--->选中TARGETS中的工程名--->选中build Phases ,将其中的Check Pods Manifest.lock、Embed Pods Frameworks、Copy Pods Resources行删除,该行右边有一个小X号,点击即可。
这样我们就可以将项目中的cocoaPods配置移除。
最后,有的同志可能需要为Mac上重新安装一次cocoaPods,想要卸载以前安装的cocoaPods,那么直接打开终端,输入命令:
sudo gem uninstall cocoapods
这里还是需要输入电脑密码。和安装时候一样。
这里只是cocoaPods的一些常用操作,如果还有其它问题,可以留言,到时候大家可以探讨下。