cocoapods 使用

 

Cocoapods 的理解与使用 

一、cocoapods 简介

  Java:"我有Maven",nodejs:"npm是我老伴儿",iOS的依赖管理工具:"非cocoapods莫属了"。在敏捷开发的项目上,cocoapods的作用巨大,为开发者节省不少时间和重复性的工作,明确一点的是cocoapods项目源码都在Github 上。有些“杠精”肯定要抗议说cocoapods安装好心累遇到各种问题,不虚,接下来就分享出我使用以来的各种步骤心得与大家分享,但首先是要了解下cocoapods的原理才能更好的解决问题。

二、cocoapods原理

cocoapods 项目 会通过Podfile 文件 生成一个Pods.xcodeproj 工程,工程中会引入所有你添加的第三方库并默认生成相应的静态.a库,添加进pods工程引用中,最终Pods工程会生成一个libPod-xx.a 库,引入到你的工程中(引入原理就是生成一个环境变量配置文件XcodeConfig )。第一幅图为 pods config文件,二图为在主工程中配置。

在pods工程的supportFiles还存放着引用库说明的markdown文件,plist文件,资源文件脚本resource.sh。

三、cocoapods安装

1.ruby  mac系统默认安装了ruby 环境这一步可略

2.更换ruby源

sudo gem sources -l (查看源)

gem update --system

gem sources --remove https://rubygems.org/

gem sources --add https://gems.ruby-china.com/

gem sources -l (验证是否替换成功)

3.安装cocoapods

sudo gem install -n /usr/local/bin cocoapods

//如果是多个xcode 版本 Download 为相应路径下的xcode

sudo xcode-select -switch /Download/Xcode.app/Contents/Developer

4.安装pods

pod setup


//如果总是pod失败 在finder中 command + G,粘贴如下代码

~/.cocoapods/repos

具体安装不成功的办法是 传送门

等待一段时间安装成功后,在终端下 输入 pod search Masonry 检查下是否安装成功,退出库版本下按 q

查看pod 版本 : pod --version

四、cocoapods使用

1.新建一个工程

2.cd 到工程目录下

3.创建podfile 文件

                

进入podfile 文件编辑界面引入某个库

                  

然后 按下esc 键,再输入 :  号,最后 输入 wq 回车退出编辑界面(此后就可以直接在工程中编辑podfile)

最后在终端  输入 pod install 下载安装

4.更新指定库

//当你在podfile新增多个其他库后 ,输入以下命令就只会下载新增库,已添加的不去更新

pod install --verbose --no-repo-update 

//当你只想更新指定库,而不是全部更新,可输入以下命令

pod update xxx库名 --verbose --no-repo-update

以上就是使用过程了。

如果你想创建私有库可参考这篇文章:传送门

五、可能遇到的问题汇总

1.确保网络一直通常,如果再pod steup 过程中突然换网或断网,再想接下去就很难,还不如要退出重新pod setup

2. [!] Found multiple specifications for `REFormattedNumberField (1.1.6)`:

这是由于cocoapods版本不一致,需要团队开发者统一cocoapods版本

3.ERROR:  SSL verification error at depth 1: unable to get local issuer certificate 

这种证书错误就需要更换最新的ruby源:https://gems.ruby-china.org/ ,更新方法安装过程已经讲过了

4.不同target 安装不同的库,需要 在podfile 文件上 分别使用target 命令如:

target :'test01' do

pod 'AFNetworking', '~> 2.0'

end

target :'test02' do

pod 'Masonry', '~> 1.0.0'

end

            5. RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54

这种问题一般是因为 xcode 打开了,或者选择路径不对要切换到相应xcode 版本包下sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

6.RPC failed; curl 18 transfer closed with outstanding read data remaining

repo仓库存储不足 ,输入: git config --global http.postBuffer 524288000   ,单位bit

更多问题如下:

cocoapods组件化问题

其他特殊问题

六、参考:

            1.另一种iOS 库管理工具 Carthage 包管理工具 ,有兴趣的可以了解以下

2.pod使用各种操作参考

3.cocoapods的静态库和动态库

以上就是个人项目使用cocoapods的经验,不足之处请见谅,希望能帮到有需要的朋友!

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值