CocoaPods安装和使用
CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。
CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认已经可以运行Ruby了,因此我们只需执行以下命令:
sudo gem install cocoapods
或者
sudo gem install -n/user/local/bin cocoapods
由于国内网络的限制,执行时会出现下面的错误提示:
ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why: Unable to download data from https://rubygems.org/ - Errno::EPIPE: Broken pipe - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)
此时可以用淘宝的RubyGems镜像来代替官方版本,执行以下命令:
$ gem sources -l
$ gem sources --remove https://rubygems.org/
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
鉴于目前淘宝的RubyGems镜像已不再支持更新,我们可以使用最新镜像:
$ sudo gem sources --add https://gems.ruby-china.org/
将代理换回国内的淘宝后,重新执行一遍安装命令
sudo gem install cocoapods
安装成功后,接着执行命令
pod setup
如果Ruby环境不够新,可能需要更新以下:
sudo gem update --system
然后利用vim打开Podfile文件编辑,加入你想要使用的类库,格式如下:
platform :ios, '8.0'
use_frameworks!
target 'Test' do pod
'AFNetworking', '~> 3.0'
end
注意iOS8.0之后,可以增加的动态库了(以前只能是静态库的),为了匹配动态库,增加了
use_frameworks!
最后执行安装命令
[!] From now on use `Sample0814.xcworkspace`.
当终端出现类似上面的提示后,就代表成功了:
pod install
P.s.1 上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。
P.s.2 如果上面因为权限问题安装失败,必须每次都要删除
rm -rf /Users/loginnanme/Library/Caches/CocoaPods/
因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。
- P.s.3 关于Podfile文件编辑时,第三方库版本号的各种写法:
pod ‘AFNetworking’ //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′ //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′ //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′ //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′ //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′ //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′ //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
在执行
pod setup
的时候,可能会比较慢,这时候不要慌,可以通过
cd .~/cocoapods
之后
du -sh
查看当前的安装进度
如果Mac自带的Ruby版本不够新,可以参考我的另一篇文章
http://www.jianshu.com/p/2bc92a0e1b83
在按照步骤执行的过程中遇到任何问题希望大家多多交流