问题:在咱们日常开发中,难免会用到一些第三方库(比方
AFNetworking、SDWebImage…),而这些第三方库或许会引用一些其他第三方库,所以咱们又要引进其他第三方库。(古语:子子孙孙无穷尽也) 另外,假如第三方库更新了,还要手动重新引进新的库。(总之便是很麻烦)
- 需求:是否能有个东西,能协助开发者们管理第三方库?在第三方库更新时,能经过一些简略指令,及时更新第三方库?
所以,强壮的CocoaPods诞生了。
今天咱们就来介绍一下CocoaPods,以及CocoaPods的“装置”和“根本运用”。
一、CocoaPods简介:
CocoaPods是开发iOS项目的库管理东西。它具有超越55,000个库,并在超越300万个应用程序中运用。经过CocoaPods可以协助咱们高雅地扩展项目,快捷的导入第三方开源库。 (附:CocoaPods官网)
二、CocoaPods的环境搭建:
翻开终端:
-
第一步:首先在装置CocoaPods之前,需求装置好Ruby环境。
-
第二步:运用ruby-china的Ruby镜像源。 先用指令:
$ gem sources --remove https://rubygems.org/。 再用指令:$ gem sources -a https://gems.ruby-china.com/。 为了验证Ruby镜像源是ruby-china,可运用指令:$ gem sources -l。 -
第三步:装置cocoaPods: 运用指令:
sudo gem install cocoapods(若无读写权限:用sudo gem install -n /usr/local/bin cocoapods代替。)
三、CocoaPods的根本运用:
步骤如下:
1. 先经过terminal找到项目目录,并新建Podfile。
运用指令:pod init。
2. 翻开Podfile文件。
运用指令:open Podfile。
3. 搜索需求导入的结构。
运用指令:pod search 结构名。
4. 把所要导入的结构信息写入Podfile文件。
platform:ios,'10.0'
target :你的项目名字 do
pod'AFNetworking','~>3.2.1'
pod'SDWebImage'
...
end
关于版别规模:
| 符号 | 含义 |
|---|---|
> 0.1 |
高于0.1版别(不包含0.1版别)的恣意一个版别 |
>= 0.1 |
高于0.1版别(包含0.1版别)的恣意一个版别 |
< 0.1 |
低于0.1版别(不包含0.1版别)的恣意一个 |
<= 0.1 |
低于0.1版别(包含0.1版别)的恣意一个 |
~> 0.1.2 |
版别 0.1.2的版别到0.2 ,不包括0.2。 等效于>= 0.1.2而且 <0.2.0,而且始终是你指定规模内的最新版别。 |
| 不指定 | 默以为最新版别 |
5. 装置第三方结构
运用指令:pod install
(PS:假如当时网络情况不好,可以不更新索引库,直接用指令pod install --no-repo-update即可。)
四、举例
这儿小编举了一个导入AFNetworking、SDWebImage结构w的例子。
-
咱们新建一个工程:QiCocoaPods。
-
装置指定第三方库:运用指令
pod install。如下图:
- 翻开
.xcworkspace文件,开始编程。(.xcworkspace代替了.xcodeproj)
五、弥补
- 弥补一:
pod install与pod update的差异?
答: pod install:装置类库,第一次运用时,用pod install,装置所需求的一切类库。后续运用时,会引进之前没有引进的类库。 pod update:更新一切的类库到指定版别规模内的最新版别。
- 弥补二:
pod install与pod install --no-repo-update的差异?
答: pod install:在装置前会更新本地repo库。 pod install –no-repo-update:不会更新本地repo库,直接装置pod。




