博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浅析Cocoapods机制
阅读量:6884 次
发布时间:2019-06-27

本文共 1001 字,大约阅读时间需要 3 分钟。

前言

对于做iOS开发,对Cocoapods并不会很陌生,在我负责的项目中,基本是少不了这个工具, 用来管理项目中第三方库,虽然一直都在使用这个工具, 但是对其的工作机制并不是很了解。因此抽空研究了一下, 在此做个记录,如有错误,还请看官们指出

Cocoapods使用

在这里我就不介绍Cocoapods是什么, 要怎么安装了,各位自行百度,网上应该很多,在这里仅仅只对其中的两个命令和一些注意点进行讲解一下

Podfile 和 Podfile.lock

在项目中使用了Cocoapods后, 我们的项目文件夹中会多出以下三个文件

而 Podfile 和 Podfile.lock 两者的区别是,一个文件中有框架的版本信息, 一个没有

pod install

使用此指令,如果项目中存在Podfile.lock,那么就直接从此文件中读取框架信息下载安装,如果不存在,那么就读取Podfile文件中的框架信息下载安装,下载完成后, 生成对应的Podfile.lock文件

pod update

使用此命令,不管Podfile.lock是否存在,都会读取Podfile文件中的框架信息进行下载

在开发中,如何选择 install 和 update 命令?

  1. 多人开发,上传到git或者SVN中, 不要上传Pods文件夹
  2. 从git或者SVN上把项目Check Out下来, 请使用 pod install 命令安装
  3. 如果大家需要统一升级第三方库, 请使用 pod update

Cocoapods机制图解

远程索引库图解

在Cocoapods中其实存在着这么一个远程索引库, 这个库中存储的不是框架的代码,而是框架的描述信息,其实就是.spec

本地索引库图解

安装Cocoapods,使用 pod setup 指令,会将远程索引库克隆下来,在本地保存一份

检索索引文件图解

在安装完Cocoapods后, 我们使用 pod search 去搜索某个框架,这个搜索仅仅是在本地进行索引, 而本地索引库并不能进行这种操作, 因此会生成一个检索索引文件

完整机制图解

Cocoapods物理存在形式

远程索引库

在GitHub上上搜索Specs, 这就是Cocoapods的远程索引库

本地索引库

检索索引文件

结束

上述这些就是Cocoapods的基本运作机制,更加深入的内容, 还得继续研究, 今天就先到这里了

转载地址:http://kgibl.baihongyu.com/

你可能感兴趣的文章