-
cocoapods简介:
cocoapods 是iOS的类库管理工具,可以让开发者很方便集成各种第三方库,而不用去网站上一个个下载,再一个个文件夹的拖进项目中,还得添加相关的系统依赖库。只需要安装好cocoapods,然后编写好Podfile,最好在终端输入一行命令,就可以简单的做到第三方库的添加、升级、删除,大大的节省我们的开发时间。
-
cocoapods安装:
首先我们需要安装Ruby环境,这里就不过多介绍,一般都是安装了的。
然后就是打开终端,输入
$ gem sources -l
检查Ruby源(天朝你懂得),如果你的镜像地址是
*** CURRENT SOURCES ***
https://rubygems.org/
那么我们就需要替换这个镜像源,首先删除这个
$ gem sources --remove https://rubygems.org/
运行完这行命令,继续
$ gem sources -a https://ruby.taobao.org/
(OS 10.11以前是
$ gem sources -a http://ruby.taobao.org/)
不过现在有说法淘宝镜像没有继续维护(传送门)这个,我也不知道真假,所以这边还有一个镜像源
$ gem sources -a
https://gems.ruby-china.com/
(注:请尽可能用比较新的 RubyGems 版本,建议 2.6.x 以上。
$ gem update --system # 这里请FQ一下,如果不行下面也就有链接,下载安装包安装
$ gem -v
)
运行完了,你可以运行 $ gem sources -l 看下是否替换成功。
*** CURRENT SOURCES ***
https://gems.ruby-china.org
或则
*** CURRENT SOURCES ***
https://ruby.taobao.org/
到这里就算已经成功配置完环境了,下一步就是安装了。继续在终端输入命令:
$ sudo gem install -n /usr/local/bin cocoapods
(OS 10.11以前是 $ sudo gem install cocoapods
)
等执行完,继续:
$ pod setup
到这里,就算安装成功了;你可以输入
$ pod --version
进行验证cocoapods版本,你也可以更新gem,这个就不多说,自己看链接。
-
cocoapods使用:
首先,我们得在终端里面cd到项目文件夹里面
$ cd 项目文件夹路径 (可以直接把拖动项目文件夹到终端光标处,系统自动生成路径)
然后创建Podfile 文件
$ touch Podfile
再编辑Podfile文件:(Podfile语法参考)
$ vim Podfile (终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出,:q 不保存退出)
platform :ios, '8.0' #用来设置所有第三方库所支持的iOS最低版本
pod '
AFNetworking','~>2.6' #设置框架的名称和版本号
cocopods版本是1.0.0以上的:
platform :ios, '8.0'
use_frameworks! #(swift要用到这一句)
target 'MyApp' do #MyApp 就是你的项目名
pod 'AFNetworking', '~> 2.6'
end
(版本号的规则:
'>1.0' 可以安装任何高于1.0的版本
'>=1.0' 可以安装任何高于或等于1.0的版本
'<1.0' 任何低于1.0的版本
'<=1.0' 任何低于或等于1.0的版本
'~>0.1' 任何高于或等于0.1的版本,但是不包含高于1.0的版本
'~>0' 任何版本,相当于不指定版本,默认采用最新版本号)
写好了 :wq 保存退出vim,输入
$ pod install
等命令运行完,项目就已经是添加了cocoapods管理,启动项目就是点击.xcworkspace后缀的文件,在项目中,导入头文件就能调用第三方库了。以后需要添加、更新、删除某个第三方库,只要编写好
Podfile文件,在终端输入:
$ pod update
运行完就可以了。
PS:常用的命令
1.清理缓存(或则是本地仓库,不知道这个说法对不对)
$ sudo rm -fr ~/Library/Caches/CocoaPods/
$ sudo rm -fr ~/.cocoapods/repos/master/
2.Setting up CocoaPods master repo 卡住(查看master下载情况)
$ cd ~/.cocoapods
$ du -sh * (大小894M左右,记录时间:2016.11.7--cocoapods版本1.1.1);
3. 卸载重装cocoapods
4.升级ruby遇到的错误(传送门)
4.1
ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
4.2
Setting up CocoaPods master repo
[!] /usr/local/bin/Git clone https://github.com/CocoaPods/Specs.git master
Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed