CocoaPods 的安装和使用
CocoaPods
CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本
使用 CocoaPods
1、在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。
2、使用CocoaPods可以很方便地查找新的第三方库
1、升级Ruby环境
终端输入:$ gem update --system
如果提示没有权限 ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.
这时应该输入:$ sudo gem update --system
接下来输入密码,注意:输入密码的时候没有任何反应,光标也不会移动,输完了直接回车,如果看到 RubyGems system software updated 说明更新成功
2、更换Ruby镜像
首先移除现有的Ruby镜像,然后添加国内最新镜像源(淘宝的Ruby镜像已经不更新了)执行完毕之后输入gem sources -l来查看当前镜像
终端输入:$ gem sources --remove https://rubygems.org/
终端输入:$ gem sources -a https://gems.ruby-china.org/
终端输入:$ gem sources -l
如果结果是https://gems.ruby-china.org/ 说明添加成功,否则继续执行,否则继续执行
$ gem source -a https://gems.ruby-china.org/
3.安装CocoaPods
终端输入:$ sudo gem install cocoapods
如果遇到说没有权限
终端输入:$ sudo gem install -n /usr/local/bin cocoapods
如果提示说 gem installed 执行
终端输入:$ pod setup
然后会出现Setting up CocoaPods master repo,卡住不动了,说明Cocoapods在将它的信息下载到 ~/.cocoapods里,可以
command+n新建一个终端窗口,执行cd ~/.cocoapods/进入到该文件夹下,然后执行du -sh *来查看文件大小,每隔几分钟查看一次,这个目录最终大小是900多M(我的是930M)当出现Setup completed的时候说明已经完成了
4、CocoaPods的使用
1> 搜索第三方库
终端输入:$ pod search AFNetworking
如果出现下面情况,是因为之前pod search的时候生成了缓存文件search_index.json,执行
rm ~/Library/Caches/CocoaPods/search_index.jso 来删除该文件,然后再次输入 pod search AFNetworking进行搜索,这时会提示Creating search index for spec rep 'master'...成功后会看到 pod 'AFNetworking', '~>3.1.0'

2> 在工程中创建一个Podfile文件
进到工程目录
终端输入:$ cd 文件路径 直接拖拽文件即可
终端输入:$ touch Podfile // 创建文件
接着在工程目录下可以看到多了一个Podfile文件
3> 编辑想导入的第三方库的名称及版本
终端输入:$ vim Podfile
进来之后紧接着按键盘上的英文'i'键下面的"Podsfile" 0L, 0C将变成-- INSERT --然后就可以编辑文字了,输入以下文字
platform :ios, '7.0' // 代表当前AFNetworking支持的iOS最低版本是iOS 7.0
target 'MyApp' do // 工程名字
pod 'AFNetworking', '~>3.1.0' // 要下载的AFNetworking版本是3.1.0及以上版本,去掉后面的 '~>3.1.0' 代表下载最新版
end
先按左上角的esc键,再按:键,再输入wq,点击回车,保存并退出
4> 把该库下载到Xcode中
终端输入:$ pod install
成功之后 关闭所有的Xcode窗口,再次打开工程目录会看到多了一个后缀名为.xcworkspace文件,以后每次打开项目直接双击 .xcworkspace文件,进入工程后引入头文件不再是#import "AFNetworking.h",而是#import <AFNetworking.h>
5> 添加其他的框架
在podfile 文件夹 输入 pod '框架名' 然后 在终端执行 pod update 即可