CocoaPods(https://cocoapods.org)是一个用来管理第三方依赖库的工具,它可以解决库与库之间的依赖关系,通过CocoaPods来下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我们的工程连接起来,供我们开发时使用。
使用步骤
步骤1安装
CocoaPods是通过Ruby实现的,MAC电脑的OS X系统默认已经可以运行Ruby了
1-1 打开Lauchpad-其他-终端
1-2 然后在终端输入安装语句
sudo gem install cocoapods
// 注意:如果cocoapods版本需要升级时,即当前版本0.39.0需要升级到最新版本1.1.0,使用升级语句
sudo gem install cocoapods --pre
// 在终端查看cocoapods的版本号的命令
pod --version
1-2-1 升级gem,升级成功后会提示: RubyGems system software updated
sudo gem update --system
1-3 根据提示输入密码,并按回车键『注意:输入的密码是无法显示的』
1-4 系统自动安装相关文件,最后显示如下语句
CocoaPods 0.34.0.rc2 is available.
To update use:gem install cocoapods\n
Setup completed(read-only access)
1-4-1 显示网络异常时,更改安装源
查看当前ruby的源:
gem sources -l
移除缓存中的源:
gem sources --remove https://rubygems.org/
更新保存缓存源:
gem sources -a https://ruby.taobao.org/
更新源失败时,如下提示:
zhangshaoyudeiMac:~ snow$ gem sources -a https://ruby.taobao.org/
Error fetching https://ruby.taobao.org/:
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)
修改源为【https://gems.ruby-china.com】,如下:
zhangshaoyudeiMac:~ snow$ gem source -a https://gems.ruby-china.com
1-5 完成后输入语句继续安装
pod setup
注意:安装时使用了『gem』语句,在升级时也同样要使用『gem』语句。
步骤2使用
在项目中使用cocoapods,需要先通过终端创建"Podfile"文件,并在"Podfile"文件中编辑需要使用的第三方文件,最后再进行安装。同时,项目使用时,是通过"*****.xcworkspace"来使用项目了,而不是"*****.xcodeproj"来使用项目。
2-1 进入项目文件夹(通过语句"ls"查看目录,再通过"cd 目录名"打开需要的目录,如果要返回上层目录时,则通过"cd .."返回)
2-2 创建"Podfile"文件(通过语句"touch Podfile"进行创建,或通过语句"pod init",可以通过语句"ls"查看是否创建成功)
2-3-1 编辑"Podfile"文件(通过语句"vi Podfile"进入"Podfile"文件)
2-3-2 进入编辑模式(输入键盘中的"i"进入编辑模式)
2-3-3 编辑相关内容,即输入使用平台,需要使用的第三方库,如
platform:ios,'5.0'
pod 'Reachability','~>3.1.1'
pod 'SBJson','~>4.4.4'
2-3-4 保存能出(输入键盘中的"Esc"返回非编辑模式,然后再输入":wq"保存并退出)
2-4 导入第三方库(使用语句"pod install"),如果删除或新增某个第三方类库,则使用语句"pod update"
被墙时,使用语句"pod install --verbose --no-repo-update",或"pod update --verbose --no-repo-update"
2-5 导入成功后提示"[!] From now on use '*****.xcworkspace'",提示安装成功,可以使用语句"ls"查看是否存在"*****.xcworkspace","Podfile.lock","Pods"等文件。
使用注意事项
1 如何知道是否支付需要的第三方库
通过语句"pod search 第三方库名称"来判断是否支付所需的第三库,如"pod search AFNetworking"
2 如何删除已经安装过的第三方库
在"Podfile"文件中删除,或使用"#"进行注释且保存后,通过"pod update"进行操作
3 如何更新已经安装的第三方库
通过语句"pod update"会更新所有的第三方库(被墙时,使用语句:podupdate --verbose --no-repo-update)
4 如何安装即将用到的第三方库
通过语句"pod install"安装第三方库(被墙时,使用语句:pod install --verbose --no-repo-update)
5 如何安装第三方库帮助文档《使用Objective-C的文档生成工具:appledoc》
通过语句"brew install appledoc"来安装第三方库的帮助文档,并集成到Xcode中
操作如图所示
步骤1

步骤2

步骤3

步骤4

步骤5

步骤6

步骤7

CocoaPods的原理,它是将所有的依赖库都放到另一个名为Pods项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中。
发现的一些技术细节有:
(1)Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。
(2)对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本,该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目标目录中。
(3)CocoaPods通过一个名为Pods.xcconfig的文件来在编译时设置所有的依赖和参数。
异常处理
1、使用pod init创建Podfile文件报错时,错误提示如下:
### Error
```
RuntimeError - [Xcodeproj] Unknown object version.
/usr/local/lib/ruby/gems/2.4.0/gems/xcodeproj-1.5.4/lib/xcodeproj/project.rb:217:in `initialize_from_file'
/usr/local/lib/ruby/gems/2.4.0/gems/xcodeproj-1.5.4/lib/xcodeproj/project.rb:102:in `open'
/usr/local/lib/ruby/gems/2.4.0/gems/cocoapods-1.3.1/lib/cocoapods/command/init.rb:41:in `validate!'
/usr/local/lib/ruby/gems/2.4.0/gems/claide-1.0.2/lib/claide/command.rb:333:in `run'
/usr/local/lib/ruby/gems/2.4.0/gems/cocoapods-1.3.1/lib/cocoapods/command.rb:52:in `run'
/usr/local/lib/ruby/gems/2.4.0/gems/cocoapods-1.3.1/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'
```
解决方法:
在终端使用命令"xcodeproj --version"查看xcodeproj的版本号
在终端使用命令"gem update xcodeproj"更新xcodeproj的版本号
在终端再次使用命令"pod init"初始化Podfile文件
CocoaPods是iOS开发中用于管理第三方库的工具,它解决了库的依赖关系,通过创建workspace整合第三方库。本文详细介绍了CocoaPods的安装、使用步骤及常见问题,包括安装、编辑Podfile、导入库、搜索库和更新库的操作。同时,解释了CocoaPods的工作原理和资源处理方式。
1万+

被折叠的 条评论
为什么被折叠?



