1.CocoaPods的安装
首先要了解Gem,这是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找、安装、升级和卸载软件包,非常的便捷。
CocoaPods是以Ruby gem包的形式被安装的,也就是说CocoaPods插件是由Ruby语言写的库文件,可以通过gem命令安装CocoaPods。
1.1安装步骤
1.更换Gem源
由于在国内访问Gem默认的源下载更新都会异常的慢,换成国内的源会速度会快一些。
以前都是替换到 https://ruby.taobao.org/源,但是现在RubyGems
镜像的管理工作以后由 Ruby China
负责了,因此使用https://gems.ruby-china.com/源。
// 移除默认的源
$ gem sources --remove https://rubygems.org/
// 添加国内的源
$ gem sources -a https://gems.ruby-china.com/
// 查看源
$ gem sources -l
https://gems.ruby-china.com
# 确保只有 gems.ruby-china.com
2.安装CocoaPods
先卸载,再安装
# 卸载操作
$ sudo gem uninstall cocoapods
# 安装
$ sudo gem install cocoapods
或指定版本安装:
gem install cocoapods -v 1.5.2
注意:在Mac OS X 10.11上安装cocoapods会出现以下错误。
ERROR: While executing gem ... (Gem::DependencyError)
Unable to resolve dependencies: cocoapods requires cocoapods-core (= 1.2.0), cocoapods-downloader (< 2.0, >= 1.1.3), cocoapods-trunk (< 2.0, >= 1.1.2), molinillo (~> 0.5.5), xcodeproj (< 2.0, >= 1.4.1), colored (~> 1.2), escape (~> 0.0.4), fourflusher (~> 2.0.1), gh_inspector (~> 1.0), nap (~> 1.0), ruby-macho (~> 0.2.5); activesupport requires i18n (>= 0.6.9, ~> 0.6), tzinfo (~> 1.1), minitest (~> 5.1); cocoapods-plugins requires nap (>= 0)
这种情况下,使用 Homebrew 安装 ruby,
# 先安装 Homebrew
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# 再安装 ruby
$ brew install ruby
再执行以下命令更新 gem:
sudo gem install -n /usr/local/bin cocoapods
3.初始化CocoaPods。
目的是将网络上的第三方框架下载到本地,缓存起来。
$ pod setup
注意:
1.如果速度比较慢,直接停止初始化(control + c),参照第4步操作。如果速度可以,则不需要第4步操作。
2.并不是每一个第三方框架都会被下载到本地,能否被下载到本地的前提是,该第三方框架需要支持CocoaPods。
3.检验第三方框架是否支持CocoaPods。3.1、可以在GitHub上查看框架的目录中是否有
.podspec
文件,只要含有这个文件,就支持CocoaPods,就会被下载到本地。
3.2、在GitHub搜索cocoapods
,找到CocoaPods/Specs
,其目录中的文件名称就是支持CocoaPods的第三方框架。
3.3、登录CocoaPods官网https://cocoapods.org/
,搜索框架是否支持。
4.更换镜像服务器
如果第3步比较慢,所以要把第三方框架镜像的源更换到国内的源,这样会比较快一些。
// 移除master
$ pod repo remove master
// 添加国内镜像
$ pod repo add master https://git.coding.net/CocoaPods/Specs.git
// 执行步骤4,初始化CocoaPods
$ pod setup
注意:
在执行移除master命令时,如果报错 [!] repo master does not exist
,不用理会,直接执行第二条命令。
如果执行第二条命令时报错:[!] To setup the master specs repo, please run pod setup
,此时放弃执行以上三条命令,通过以下方法解决。
参考官方(http://guides.cocoapods.org/terminal/commands.html#pod_setup) 对pod setup
命令的解释,可以使用git命令,将 Specs.git
文件 clone 到 /Users/用户名/.cocoapods/repos 目录下,并把文件名改为master。
git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master
此时就解决了上述报错的问题。
2.CocoaPods的使用
2.1、更新第三方库信息
由于第三方框架是不断更新的,所以要定时更新第三方库
pod repo update
2.2、搜索第三方库
能被搜索到的第三方库,才可以使用CocoaPods管理
$ pod search 关键字
3.命令行使用CocoaPods
3.1、进入项目工程所在目录
$ cd ~/项目文件夹
3.2、新建Podfile, 通过这个命令填写需要的框架
$ vim Podfile //然后输入i:进入编辑状态
3.3、Podfile文件的格式
platform :ios, '8.0'
use_frameworks!
target 'project名字' do
pod '框架名字'
pod '框架名字', '~> 版本号'
end
按ESC
:退出编辑模式,再入:wq
:保存并退出。
注意:在Swift中,Podfile的第一句必须写上
use_frameworks!
。
3.4、解析Podfile,安装第三方框架
$ pod install
3.5、解析Podfile,升级第三方框架
$ pod update
注意,如果使用CocoaPods过程中出现了莫名其妙的问题,执行以下命令。
$ sudo gem update --system
$ sudo gem install cocoapods
$ pod setup
4.使用CocoaPods插件
- 2.解压缩,打开
CocoaPods.xcworkspace
,运行。
此时插件就安装好了。
- 3.重新打开Xcode,如下图所示选择
此时CocoaPods插件就可以使用了
- 4.填写需要集成的框架名称
注意格式,参考 https://guides.cocoapods.org/using/the-podfile.html 。
-
5.安装框架
注意, 如果还是不能使用,请看以下的注意点。
5.使用第三方框架的注意点
在Swift中尽量不要手动拖拽第三方框架到项目中,因为swift具有命名空间的概念,这样容易冲突。
在Swift中建议使用CocoaPods管理第三方框架,此时如果第三方框架是OC语言写的,点击查看头文件,看到的代码格式为swift格式。
如果在使用CocoaPods时报错,点击 target->Build Phases
,然后点击左上角的+
按钮,选择New copy Files Phase
,在该页面最下面,选择FrameWork
,再点击+
选择Pods.Framework。
在Swift中,编辑Podfile文件时,要添加 use_frameworks! 这句话。
使用git提交代码时,默认不会提交CocoaPods相关的内容,此时需要打开命令行,添加CocoaPods到git远程仓库。
$ git add .
$ git commit -m "添加第三方框架"
$ git push