CocoaPods官方使用说明文档
安装
ruby 的软件源https://rubygems.org/
因为使用的是亚马逊的云服务,需要更新 ruby 的源:
$ gem source -- remove https://rubygems.org/
$ gem source -a https://ruby.taobao.org/(已经停用注意移除)
$ gem source -a https://gems.ruby-china.org/
$ gem source -l(列出目前所有的源)
安装方式异常简单,Mac 下自带ruby,使用 ruby 的 gem 命令即可下载安装:
$ sudo gem install cocoapods
$ pod setup
如果出现下面
问题一:
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)
是因为gem版本太老可以尝试命令更新:
$ sudo gem update --system
注意:
更新gem需要admin权限。如果需要修改密码,注意新密码和验证保持一致。
问题二:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
解决途径:
输入终端命令
sudo gem install -n /usr/local/bin cocoapods
还有一点需要注意,pod setup
在执行时,会输出Setting up CocoaPods master repo
,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods
目录下,如果你等太久,可以试着 cd
到那个目录,用du -sh *
来查看下载进度。你也可以参考本文接下来的使用 cocoapods 的镜像索引
一节的内容来提高下载速度。
使用 Cocoapods 的镜像索引
所有的项目的 Podspec 文件都托管在https://github.com/CocoaPods/Specs
。第一次执行pod setup
时,CocoaPods 会将这些podspec
索引文件更新到本地的 ~/.cocoapods/
目录下,这个索引文件比较大,有 80M 左右。所以第一次更新时非常慢,笔者就更新了将近 1 个小时才完成。
一个叫 akinliu
的朋友在 gitcafe
和 oschina
上建立了 CocoaPods 索引库的镜像,因为 gitcafe 和 oschina 都是国内的服务器,所以在执行索引更新操作时,会快很多。如下操作可以将 CocoaPods 设置成使用 gitcafe 镜像:
$ pod repo remove master
$ pod repo add master https://gitcafe.com/akuandev/Specs.git
$ pod repo update
将上面的
https://gitcafe.com/akuandev/Specs.git
替换为
https://git.oschina.net/akuandev/Specs.git
就可以使用oschina的镜像
使用CocoaPods
1.在项目文件xxx.xcodeproj
同一目录下创建Podfile
文件
$ cd 项目xxx.xcodeproj文件目录
$ touch Podfile
2.使用vim命令编辑Podfile文件
$ sudo vim Podfile
3.按下i
插入要继承的第三方框架
platform :ios
pod 'JSONKit', '~> 1.4'
pod 'Reachability', '~> 3.0.0'
pod 'ASIHTTPRequest'
pod 'RegexKitLite'
4.按下 ESC
退出编辑状态
5.输入wq
退出文件
6.执行命令pod install
或者 pod upodate
7.成功后的命令图片
现在,你的所有第三方库都已经下载完成并且设置好了编译参数和依赖,你只需要记住如下 2 点即可:
使用 CocoaPods 生成的
.xcworkspace
文件来打开工程,而不是以前的 .xcodeproj
文件。每次更改了
Podfile
文件,你需要重新执行一次pod update
命令。
pod 查找第三方库
如果不知道 cocoaPods 管理的库中,是否有你想要的库,那么你可以通过 pod search 命令进行查找:
$ pod search AFNetworking