首先需要肯定的是Cocoapods是一个好东西,一个第三方库的管理工具,有了它再也不用照着官方文档一点一点的配置,省去了很多时间和配置过程中遇到坑。
安装的话就不多说了,百度一把大,重点说说使用吧。
完美的执行步骤
1.创建一个Podfile
1.cd 到工程目录
2.touch Podfile
2.写入需要下载的依赖库,比如
platform :ios, '8.0'
target 'fafdf' do
pod 'Masonry', '~> 1.0.1'
end
3.pod install ,pod update等待下载,完美。
上面都理想环境下的情况,而现实往往很残酷,就说最近很火的一句话,成年人的世界哪有容易!接下来说说各种妖魔鬼怪。
第一次使用和一段时间没用了,突然心血来潮拿来用用,这个时候可能就会出现下面这个情况
很明显是要根据https://github.com/CocoaPods/Specs.git这个地址进行下载,这下载的是什么?
没错就是repo,搜索了一下,它是用来管理所以第三方库的信息,载我们第一次执行pod search命令的时候,就是在它里面进行查询,你可以用open ~/.cocoapods/repos命令打开这个文件夹,在你没下载之前里面是空的。CocoaPods在首次安装后,不管是search、install还是update都是去下载它,大小在几百兆,网速非常的慢,一直下着下着就失败了,这个时候可以换一种方式去下载它。
1.去https://github.com/CocoaPods/Specs把repo下载下来,把文件放到.cocoapods/repos/master这个目录下
2.cd ~/.cocoapods/repos/master/Specs
3.初始化:git init
4.关联 :git remote add origin https://github.com/CocoaPods/Specs 这就可以了,我们再执行pod search的时候就不会提醒下载了。
还有一种方式
更换repo换源
cd ~/.cocoapods/repos
pod repo remove master
git clone https://git.coding.net/hging/Specs.git master
或者
pod repo remove master
pod repo add master https://git.coding.net/hging/Specs.git
pod repo update
最后在自己工程中的Podfile文件加入下面一行描述:
source 'https://git.coding.net/hging/Specs.git'不然还会走默认的源
其它的源https://gitcafe.com/akuandev/Specs.git和http://git.oschina.net/akuandev/Specs.git也可以。
repo里面存放的是所有第三方库的地址列表,下载第三方库对应的源码还是要到指定的源码存放地址(podspecs中有指定)去下载。更换repo源只是加快了repo的下载速度,并不会加快第三方库源码的下载速度,两者是没有任何关系的。
也可以避开这种更新,在下载依赖库的时候使用pod install --no-repo-update,pod update --no-repo-update,这样就不用去更新repo了,长时间不更新的话会有一个问题,在使用pod search命令的时候搜索不到你要的版本,所以在一个适当的时候,比如网速可以的时候去更新一下吧。
一切安装完毕也不一定就可以跑得起来
比如运行项目的时候可能会报/Pods/Target Support Files/Pods/Pods-resources.sh: Permission denied
该错误是由访问权限引起,解决方案是
进入Pods/Target Support Files/Pods/ 目录以后,执行以下命令即可
chmod a+x 路径(Pods-resources.sh的路径。
持续更新。。。。