cocoapods
本文为读CocoaPods官方文档的总结,读书笔记。
官方文档地址为 https://guides.cocoapods.org/
1介绍
cocoapods 是为xcode项目管理 三方库依赖的。
- 1用podfile记录三方库依赖。
- 2解决三方库之间的依赖。
- 3获取三方库代码
- 4在xcode的workspace中链接在一起去构建工程。
2 install 和 update
pod install 在依赖库添加,删除的时候使用。 Pod update 只在更新三方库到比较新的版本的时候。
3 lock
podfile.lock 记录当前pods的版本号,pod install的时候会按照lock文件中的记录的版本号去获取三方库。 pod update会更新lock文件中的版本号到最新。
4 cocopods做了什么事情:
-
1. 创建了一个workspace
-
2. 将你的项目放入workspace
-
3.将三方库项目放入workspace
-
4. 添加 libPods.a 到 targets=> build phases=>link with libraries
-
5. 添加 CocoaPods Xcode configuration file 到我们的工程。
-
6. 改变 app的target configurations 为依赖cocoapods的。
-
7. 添加一个build phase 来拷贝 资源从pods 到我们app的bundle。 这里添加的脚本,shell使用的是/bin/sh 脚本文件为 $/{SRCROOT}/Pods/PodsResources.sh
5. podfile的使用:
-1.要指定target,可以指定多个target和公共target。
-
2. 指定版本的时候可以用 ><= 也可以用~>表示最高到下一个同等级版本。
-
3. 可以使用 git=> “ https://github.com/xxx.git”来指定三方的地址。
6. repo
默认的 cocoapods的仓库repo(repositories)在 ~/.cocoapods
三方库缓存 caches pods在 ~/ Library/Caches/CocoaPods
7.创建pod,
使用 pod lib create [name] 会按照模板自动生成一个标准的pod库。
-
1. LICENSE, 默认是MIT类型的。
-
2. [name].podspec 这个文件 需要我们编辑,设置好这个pod库的相关信息。设置好后,可以使用 pod lib lint 来查看是否已经编辑好。
如果只需要一个podspec文件, 直接使用 pod spec create 可以只创建 podspec文件:
8. 将pod库公开部署,
使用cocopods trunk 用来 我们的pod 和cocopods交互。
-
1. pod trunk register [email] 和cocopods建立连接
-
2. Pod trunk push [name.podspec] 推送pod 到cocoapods的仓库。
9. 私有spec库
-
1. 使用URL创建一个仓库repo pod repo add [repo_name] URL
-
2. 将你做好的podspec 添加到仓库 pod repo push [repo_name] [name.podspec]
10. 各种参数如何写,可以去查官网。
11.总结
使用方式。有3种使用库的方式
1. 在podfile中直接使用库, 库后边跟地址,即git=>’https://xxxx.git’的方式。
2. 将库通过trunk 推送到cocoapods的仓库,这样所有人都可以用。
- 自己做一个私有的仓库repo,将库推送到我们的私有仓库。 使用的时候,需要在podfile文件中指明私有repo的地址, 使用source ’https:// xxxrepo.git’的方式。
12
因为没有组件化实践,所有更深一次的cocoapods的使用,那些参数的含义,需要以后实践。
网上有很多博客,比如()http://www.mengyueping.com/2018/08/16/iOS_CocoaPods_03/