iOS开发~CocoaPods使用说明和扩展

时间:2022-08-30 05:16:47

一、什么是CocoaPods

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

二、为什么要使用CocoaPods

在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要

1.把开源库的源代码复制到项目中

2.添加一些依赖框架和动态库

3.设置-ObjC,-fno-objc-arc等参数

4.管理他们的更新

在使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install就可以了,Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。

三、CocoaPods的原理

CocoaPods的原理是将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。

四、CocoaPods 安装

1.Ruby版本的更新 很多人会迷惑,为什么安装CocoaPods,需要更新Ruby。因为CocoaPods使用Ruby脚本写的,系统自带的Ruby版本太低,无法正常运行CocoaPods的,需要一个Ruby高版本的Ruby让CocoaPods正常工作。(注:一般现在开发使用的系统自带的Ruby都能满足CocoaPods的安装需求 1)检查当前系统上Ruby的版本 打开终端窗口,输入:ruby -v 2)更新ruby(在没有VPN的情况下)

终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得

gem sources --remove https://rubygems.org/ 
gem sources -a https://ruby.taobao.org/ 
gem sources -l  (用来检查使用替换镜像位置成功)

2.CocoaPods的安装

注意:OS X 10.11 升级,虽然官方声称只是一个小的升级,但对于开发者而言,cocoapods需要重新安装,但按照以前的安装方式,在Terminal输入以下命令:

sudo gem install  cocoapods

如果报以下错误:

ERROR:  While executing gem ... (Errno::EPERM)

Operation not permitted - /usr/bin/xcodeproj

解决方案1:

执行下面的命令并重启

sudo nvram boot-args="rootless=0"

sudo reboot

重启之后, 执行这个命令检查

sudo gem install cocoapods -V

如果依旧有错误,使用第二个方案

解决方案2:

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

pod setup

还有一点需要注意,pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。

安装成功后,你会看到:Setup completed

五、CocoaPods 使用

a  新建一个项目,名字PodTest

iOS开发~CocoaPods使用说明和扩展


b  终端中,cd到项目总目录(注意:包含PodTest文件夹、PodTest.xcodeproj、PodTestTest的那个总目录)

[objc] view plaincopyprint?iOS开发~CocoaPods使用说明和扩展iOS开发~CocoaPods使用说明和扩展
  1. cd /Users/lucky/Desktop/PodTest   

c  建立Podfile(配置文件)

接着上一步,终端输入 vim Podfile

iOS开发~CocoaPods使用说明和扩展


键盘输入 i,进入编辑模式,输入

platform :ios, '8.0' 


然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq

iOS开发~CocoaPods使用说明和扩展


注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件

iOS开发~CocoaPods使用说明和扩展


激动人心的时刻到了:确定终端cd到项目总目录 “ritekiMac-mini:PodTest  lucky”,然后输入 pod install,等待一会,大约3分钟。


iOS开发~CocoaPods使用说明和扩展


查看项目根目录:

iOS开发~CocoaPods使用说明和扩展


注意:现在打开项目不是点击 PodTest.xodeproj了,而是点击 PodTest.xcworkspace


iOS开发~CocoaPods使用说明和扩展


打开项目后看到项目结构并且测试一下:



运行结果:

iOS开发~CocoaPods使用说明和扩展


补充:

1、CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?

这就需要修改Podfile了,就是用vim编辑的那个保存在项目根目录中的文件,修改完了Podfile文件,需要重新执行一次pod install命令。

例如:

platform :ios

pod 'JSONKit',       '~> 1.4'

pod 'AFNetworking',  '~> 2.0'


2、CocoaPods可以查找你想要的第三方库

终端输入命令:pod search UI

疯了了,我怎么查找这么大众的关键字,好多库~~

iOS开发~CocoaPods使用说明和扩展

然后重新编辑Podfile文件,按照之前的步骤,把更多的库都导入项目!

六、CocoaPods 更新、删除工程中的第三方框架

删除项目中已经配置的类库

1.在已经配好的CocoaPods打开Podfile文件,

iOS开发~CocoaPods使用说明和扩展
Podfile

删除选中的JSONKit

iOS开发~CocoaPods使用说明和扩展
删除

2.打开终端 cd 到当前项目目录下,重新执行pod install命令。输出信息如下:

iOS开发~CocoaPods使用说明和扩展
备注:删除工程中的第三方框架和更新第三方框架类似,更新只需要重新在终端执行一下Podfile文件。