Cocoapod是运行在ruby环境下的,在ruby环境的像Cocoapod这样的开源项目时放在放在Rubygems服务器上面的,
但国内访问https://rubygems.org/ 的时候往往会安装不成功,得翻墙才行,我们需要把服务器地址移除,添加taobao提供的镜像地址:https://ruby.taobao.org/
1.移除命令:2.添加命令:gem sources --remove https://rubygems.org/
3.查看gem来源列表(此步骤可省略):#gem sources -a https://ruby.taobao.org/(已失效需更换) gem update --system # 这里请翻墙一下 gem -v #上面两步可忽略跳过 gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/ gem sources -l
gem sources -l
4.安装Cocoapod:
sudo gem install cocoapods
5.安装成功后,接着执行命令:
pod setup
6.如果Ruby环境不够新,可能需要更新以下:
sudo gem update --system
如出现:error: RPC failed; curl 56 SSLRead() return error -9806bytes/s
自定义GEM_HOME
$ mkdir -p $HOME/Software/ruby
$ export GEM_HOME=$HOME/Software/ruby
$ gem install cocoapods
[...]
1 gem installed
$ export PATH=$PATH:$HOME/Sofware/ruby/bin
$ pod --version
7.至此安装就完成了,我们可以尝试搜索一个第三方类库:
pod search AFNetworking
8.使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:
touch Podfile
9.然后利用文本编辑打开Podfile文件编辑,加入你想要使用的类库,格式如下:
platform:ios, '7.0' pod 'Reachability' pod 'AFNetworking' pod 'Appirater' pod 'SVProgressHUD'
10.如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:
pod update
11.最后一步,定位到项目有Podfile文件目录下,执行命令进行安装:
pod install
以下为编辑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 install还是pod update都卡在Analyzing dependencies不动了
其实原因在于以上两个命令执行时会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:
pod install --verbose --no-repo-update
或者
pod update --verbose --no-repo-update
Pods written in Swift can only be integrated as frameworks; this feature is still in beta. Add use_frameworks! to your Podfile or target to opt into using it.
use_frameworks!