利用cocoapods实现模块化的一点总结

本文总结了利用CocoaPods实现模块化的经验,包括理解CocoaPods结构、创建组件库、创建和更新索引库,以及在实践中遇到的私有库依赖、系统框架依赖和图片加载等问题的解决方案。
摘要由CSDN通过智能技术生成

最近公司项目开始推动模块化了,虽然iOS的多工程联编已经是一个老技术了,自己以前也做过简单的demo,但是在实际落地过程中还是遇到了很多奇奇怪怪的问题,在这里做一下总结和记录。首先会大概讲一下cocoapods实现模块化的一个大致原理和过程,然后会把自己在实现过程遇到的问题做一下记录。

目录

cocoapods的结构

创建自己的组件库

创建和更新索引库

遇到的问题和解决方法

私有库内部的子模块互相依赖的写法

podspec文件中依赖系统framework和library的方法

私有库中如何加载图片?


cocoapods的结构

cocoapods可以理解成所有组件的管理者,管理方式是通过一个索引仓库(podspec库),所有想要加入cocoapods官方库的组件都要提供一个podspec文件,该文件即是该组件在cocoapods官方仓库中的唯一索引,同时源码仓库中的文件结构也要符合cocoapods的规定。当我们安装cocoapods时,会在我们的根目录下生成一个.cocoapods的文件夹,并将cocoapods的官方仓库克隆至该文件夹下,往后cocoapods会根据这个仓库中的索引文件将相应的组件集成进我们的工程中。

创建自己的组件库

之所以要创建我们自己的组件库,是因为模块化过程中,我们需要将不同的业务功能从主工程中剥离出来做成一个个静态库工程,然后将这些独立的业务功能模块以子工程的形式集成进主工程中,但是业务功能模块都需要用到的基础功能组件却不可能每个子工程都复制一份,比如自定义的相册、自定义的时间选择器、控制器基类等等,这些基础组件需要我们将其做成一个cocoapods私有库维护起来。

1.创建一个仓库,可以是git或者svn,都是可以的

2.使用pod命令创建私有库工程

 pod lib create {你的私有库名称}

是否创建一个demo项目这个选项,建议选择yes。最终创建的私有库工程目录结构如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值