什么是 cocoapods

每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs 的 npm。随着 iOS 开发者的增多,业界也出现了为 iOS 程序提供依赖管理的工具,它的名字叫做:CocoaPods。

CocoaPods项目的源码 在 Github 上管理。该项目开始于 2011 年 8 月 12 日,经过多年发展,现在已经成为 iOS 开发事实上的依赖管理标准工具。开发 iOS 项目不可避免地要使用第三方开源库,CocoaPods 的出现使得我们可以节省设置和更新第三方开源库的时间。

——摘自 唐巧《用CocoaPods做iOS程序的依赖管理》

cocoapods 的安装和使用

建议参照上述 唐巧的文章

由于官方的源被墙,唐巧建议使用淘宝的镜像源。但趣编程的老师们更建议使用官方源,具体原因后面会讲到(当然需要翻墙)。

我遇到的问题

趣编程的第一个新手村任务是学习 ios-starter-kit,一个 iOS 程序的基础框架。我把它 clone 了下来后,编译失败。经导师和师兄指点,应该是编译三方库时,签名出了问题,应是 cocoapods 版本过低导致。我通过 pod —version 命令查询 cocoapods 版本,是 0.39.0,而项目要求是 1.1.1 以上。需要更新。

更新失败的过程

通过搜索得知,更新 cocoapods 和安装的过程是一样的。但可能因为 RP 原因,尝试了 n 个国内的源,最高只能更新到 1.1.0。而使用这个版本的 cocoapods 在安装 ios-starter-kit 的第三方库(命令:pod install)时,会报错中断,程序依然不能编译。

为了解决更新问题,只能尝试翻墙使用官方源。

翻墙

翻墙使用了相对简单的方法,找现成的 VPN。网上搜到GreenVPN,注册简单,有收费版和免费版,免费版线路不够稳定,会掉线,而且每 20 分钟自动掉线一次,但解决燃煤之急也够了。(付费后发现收费版也会掉线,呃…)

MacOS 可以使用 L2TP 方式连接 VPN 服务器,这是连接方法

使用 VPN 后,感觉官方源下载速度比国内源都快(汗),按照前述方法完成更新,目前版本是 1.2.0。

尾声

费劲九牛二虎之力,程序总算跑通了。网上有人吐槽 cocoapods 的坑多时说,感觉用它比自己手动管理依赖还麻烦。但是在实际项目中,用不用他一般还不是你自己说的算的,所以还是不断研究吧。解决问题的过程也是提高能力的过程。

Comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注