iOS 私有pod库的发布流程

背景:客户端在公司业务发展的过程中体积越来越庞大,其中堆叠了大量的业务逻辑代码,不同业务模块的代码相互调用,相互嵌套,代码之间的耦合性越来越高,调用逻辑会越来越混乱。当某个模块需要升级的时候,改动代码的时候往往会有牵一发而动全身的感觉,特别是如果工程量出设计的时候没有考虑接口的封装,而将大量的业务代码与功能模块代码混在一起时,将来的升级就需要对代码进行大量修改及调整,带来的功工作量是非常巨大的。这就需要设计一套符合要求的组件之间通信的中间件。模块化可以将代码的功能逻辑尽量封装在一起,对外只提供接口,业务逻辑代码与功能模块通过接口进行弱耦合。

组件化开发流程及发布

1,创建组件化工程

终端命令:pod lib create <组件名>

运行结果如下图:


image.png

注:服务器创建一个仓库,clone下来之后把创建的组件仓库放进去,便于组件代码管理

2,编写podSpec⽂文件

image.png

注:组件的版本号要跟远端仓库的版本号一致(这里好像只能写数字,所以远端的branch也是数字的,后面再探索完善下),组件依赖其他第三方库的话,push的时候一定要加上--use-libraries

s.source_files一定要写对,路径是和podspec在同一层级的,要是有子文件夹的话如下图方式书写,如下图:

image.png

3,编写组件库代码

image.png

注:提交的组件记得先本地跑一下,确定没问题再push到仓库

4,本地组件库和远程组件库关联

终端命令:pod repo add <组件名> https://github.com/xiaoshu0629/xiaoshu.git(这是你的仓库地址)

注:后面的url是仓库的远程地址,如果之前添加过错误的,用命令pod repo list查看,先移除掉错误的

5,进入到组件仓库目录,推送本地podspec⽂文件到远端SpecRepository

终端命令:pod repo push <组件名> --allow-warnings --verbose --use-libraries

注:此命令是将本地的组件podspec⽂文件上传到 cocoapods组件索引库,而不是公司组件索引库,如果误操作,会造成代码泄露露,切记切记,自己的GitHub开源仓库可以这么操作

终端命令:pod trunk push <组件名>.podspec

6,将组件集成到项⽬工程中

优先使⽤用本地库,避免从github下载三⽅库,在工程的podfile文件中添加你的仓库地址,如: source https://github.com/xiaoshu0629/xiaoshu.git,然后添加你的组件:pod '<组件名>'
最后安装:

终端命令:pod install

如果觉得对你有帮助的话,点个赞哦!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容