26
2017
09

Cocoapods的安装

一、 CocoaPods简介
开发ios要用到很多第三方开源类库,例如Masonry、AFNetWorking、JSONKit等等。而这些库可能又依赖于其它类库,那么我们又得手动下载其它类库,如果库有更新,又得手动下载新版本的并删除掉项目中的旧版本的,这样手动操作非常麻烦。
所以就出现了CocoaPods,它是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,它能让我们集中的、统一管理第三方开源库。
它类似于.net开发中的Nuget工具,类似于java开发中的Maven工具
二、 CocoaPods原理(从百度援引)
CocoaPods的原理是将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,第三方源码的管理工作都从主项目移到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。
三、 CocoaPods安装
因为CocoaPods是Ruby写的工具,所以得先安装Ruby环境,而OS X系统自带了Ruby了。打开终端输入 gem –v 命令回车后,可看到版本信息。
这里写图片描述
我的macOS10.12系统中的版本是2.0.14.1。有些旧,最好更新最新版本。手动去下载更新,打开网址https://rubygems.org/pages/download 下载ZIP压缩的这个文件。
这里写图片描述
下载完后在系统的下载文件夹中可看到rubygems-2.6.3这个安装文件夹,打开后可看到里面有个setup.rb的文件。通过cd命令切换到此文件夹中来
这里写图片描述

这里写图片描述
如上图,通过ruby setup.rb 命令进行安装,此时会因为没有权限而不能安装。把命令改为sudo ruby setup.rb再安装,然后提示你输入密码后开始安装。

这里写图片描述
如上图,安装成功后再次输入gem –v命令可看到版本已更新到2.6.13。

Ruby环境搞好后就可以开始安装CocoaPods这个工具了。
这里写图片描述
如上图,输入sudo gem sources –add https://gems.ruby-china.org/ –remove https://rubygems.org/ 命令,作用是将默认的安装源https://rubygems.org替换成https://gems.ruby-china.org这个安装源,因为前者被“墙”挡住了。

输入密码并回车后,再在终端输入 gem sources –l 命令检查一下,确保只有https://gems.ruby-china.org 这个网址,如下图
这里写图片描述

好了,输入sudo gem install -n /usr/local/bin cocoapods –pre 命令开始下载安装,

完成后,下一步就是将Podspec文件托管源从github切换到国内的源,比如oschina的
输入cd ~/.cocoapods/repos/ 命令进入repos文件夹。
输入pod repo remove master 命令做下清除已有的master(如果存在)。
输入pod repo add master https://git.oschina.net/akuandev/Specs.git 命令切换到国内源。
输入pod repo update
输入pod setup 命令下载,如下图
这里写图片描述
等了几十分钟后,终于成功,如下图
这里写图片描述

输入pod –version (注意是两杠)可看到版本是1.3.1
还可以看到在隐藏的文件夹.cocoapods/repos/master/ 中刚下载的文件,如下图
(defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件,命令运行之后需要重新加载Finder:快捷键option+command+esc,选中Finder,重新启动即可)
这里写图片描述

还可以输入pod repo list 看到显示1 repo就好了,如下图
这里写图片描述

四、 CocoaPods使用
例如要在项目中使用 Masonry 这个第三方开源库,首先打开xcode9 ,新建一个IOS项目,就取名为MyProject吧。
然后在输入命令 cd /项目路径 到这个文件夹中来,如下图
这里写图片描述
(输入“cd” 和 “空格后”,直接把这个MyProject.xcodeproj托入终端可直接得到路径,然后把后面的MyProject.xcodeproj 删除就行了。)

接着输入touch Podfile命令创建Podfile文件,它和MyProject.xcodeproj文件是并列在一个文件夹中的。

接着输入pod search Masonry 命令查看网上的Masonry开源库的信息。第一次使用有点慢,耐心等等,如下图
这里写图片描述

然后可以看到Masonry这个开源库的各个版本的信息,还可以看到 pod ‘Masonry’, ’~> 1.1.0’ 这句,告诉你要这样下载,如下图
这里写图片描述

然后同时按下wq退出查看,接着就准备下载这个开源库,有时候github打不开,就必须用8.8.8.8这个公网的dns服务器
这里写图片描述
这里写图片描述
如上两图,打开网络,打开高级,添加一个8.8.8.8的DNS服务器。

关闭终端,用文本编辑器打开前面新建的Podfile文件,
输入以下三行代码
platform :ios, ’11.0’
target ‘MyProject’ do
pod ‘Masonry’, ‘~> 1.1.0’
end
(注意platform后有一个空格,’11.0’前有一个空格, ~>后有一个空格)
也可以不输入 , ‘~> 1.1.0’, 默认会下载最新版本。
打开终端,输入 cd 命令进入到Podfile所在的文件夹后,再输入pod install –no-repo-update命令开始下载开源库(在下载时会自动更新cocoapods工具,–no-repo-update表示不需要更新,如要更新则删掉这段)。
这里写图片描述

下载完第三方开源库Masonry后,情况如上图,多了.xcworkspace,.lock和Pods三个文件。以后就用 .xcworkspace打开项目。
打开项目后,就可以使用Masonry这个开源库了,注意是使用<>尖括号,如下图所示
这里写图片描述

上一篇:Apache\html+css+javascript\PHP之间的关系 下一篇:Java + TestNG + Appium 实现单机多个Android终端并发测试