CocoaPods是什么?
当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。
CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。
如何下载和安装CocoaPods?
注:要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境
1.Ruby环境的安装
1.1.Ruby版本过低,使用RVM(Ruby Version Manage即Ruby版本管理)升级Ruby
//1.安装RVM curl -L get.rvm.io | bash -s stable //2.等待一段时间后就可以成功安装后RVM source ~/.bashrc //3.测试是否安装正常 rvm -v
1.2.用RVM升级Ruby
//列出已知的ruby版本号 rvm list known //安装ruby 最新版本 rvm install 最新版本号
1.3.查看ruby版本
ruby -v
2.cocoaPods的安装
2.1.切换cocoaPods的数据源
//先删除旧的数据源(有墙)
gem source --remove https://rubygems.org/
//添加新的数据源(淘宝源目前已没有维护)
gem source -a https://gems.ruby-china.com
//查看数据源
gem source -l
2.2.安装cocoaPods
//安装cocoaPods sudo gem install cocoapods //配置仓库 pod setup
//下载结束,可查看版本号
pod --version
CocoaPod的使用
2.1.1.开源库的搜索
pod search AFNetworking
2.1.2.添加第三方库,
- 终端命令
a.新建一个项目
b.终端中,cd到项目的总目录
c.建立Podfile(配置文件) vim Podfile
d.键盘输入 i,进入编辑模式
e.编辑结束,按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq进行保存
f.输入 pod install,开始安装第三方
- 关于Podfile文件编辑
a.正常情况的编写
platform:ios,'8.0' target:'工程的名字' do pod '第三方库的名字','版本号'
end
b.如果不同的Target需要不同的依赖库,则可以
platform :ios target :'FirstTarget' do pod 'Reachability' pod 'SBJson' pod 'AFNetworking' end target :'SecondTarget' do pod 'OpenUDID' end
c.第三方库版本号的各种写法:
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的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
CocoaPod安装以及使用过程中出现的问题
a.没有指定工程中的Target
b.Podfile编写规范有误
c.安装了多个Xcode导致路径发生改变
.
解决办法
sudo xcode-select -switch /Applications/Xcode.app 注: /Applications/Xcode.app:此部分未Xcode所在路径,找到Xcode的安装路径,拖进来即可
d.当库正常导入后,但还是找不到相关头文件,制约了我们的开发效率,则可以:
在TARGETS -> Search Paths -> User Header Search Paths 中 写入 ${SRCROOT}再将后面参数改为recursive:
e.该开始安装后,会有以下情况,这一步一般都需要等待点时间,在安装过程,要是想查看下载进度,通过以下命令可以查看
//进入CocoaPods目录 cd ~/.cocoapods //查看文件大小,每隔几分钟查看一次 du -sh *
f.当输入终端命令 :
sudo gem install cocoapods
提示以下错误:
这个问题说明是你的gem版本过旧了 (没有报错此步骤可以跳过)
执行 sudo gem update --system
或是在命令中指定安装到/usr/bin/pods下即可正常安装成功:
sudo gem install -n /usr/local/bin cocoapods
安装成功
g.安装Cocoapods 使用pod指定提示 "pod: command not found"
以上问题为本人目前遇到的 ,还请大家帮忙补充