iOS组件化实战全流程二(多模块管理)

2,024 阅读2分钟

接上篇iOS组件化实战全流程一(组件库创建)

  • 前言,承接组件化实战一,组件库已创建完成

  • 目的:各个模块(组件)在pods的管理下可以进行独立开发而不相互影响

组件的开发与配置

1.添加开发的组件到本地组件模板(这里是上一篇文章中创建好的组件模板:GTCompDemo)

  • 进入GTCompDemo->GTCompDemo->Classes 在Classes里添加个人开发好的组件我这里是GTPersonTO文件 image.png 2.组件库配置 打开Example->.xcworkspace文件进入demo工程

image.png

点击.podspec文件,s.dependency添加依赖库(其他配置暂时不做讲解),将自己组件开发需要依赖的第三方库添加在这里,相当于pod里面的

pod '第三方库' image.png 添加好之后要cd到Example目录下进行pod install

cd ~/Desktop/GTCompTest/GTCompDemo/Example
pod install

组件化多模块管理

1. 创建主工程(不写任何代码的空壳工程)创建过程不作累述

我这里工程名是:GT_mainComp

2.添加pod到工程

终端cd到工程目录下

cd ~/Desktop/组件化实战全流程/GT_mainComp 

pod初始化

pod init

pod 安装组件 (暂时Podfile里没有组件)

pod install

image.png 执行结果如图表示操作成功

3.添加自己的组件库到主工程

重新进入工程发现多出一个.xcworkspace文件 image.png

双击打开.scworkspace文件,选中Podfile文件,在这里添加自己的组件,第三方组件以及本地组件

image.png 增加远端组件库

pod 'GTCompDemo','0.1.0'
如果是在码云创建的组件库,则指定源地址(注意这里是索引库地址)
pod 'GTCompDemo','0.1.0', :source =>'https://gitee.com/xxx/gtcomp-spec.git'

增加本地组件

#这里可以是相对路径也可以是绝对路径,“../”代表上次目录
pod 'GTCompDemo', :path => '../../../../GTCompTest/GTCompDemo'

在工程中导入头文件这样我们就可以使用自己的组件了,这样我们就添加了一个自己的组件到主工程里,同样,我们按照这种方式可以导入其他模块,进行多模块的管理

  • 注:最终要使用远端组件 既然最终使用远端组件我这里为什么还要用pod本地组件呢?

iOS组件化实战全流程三(多模块联编)