组件9:本地库实现方案中 有几个问题,需要优化。
- 本地库需要手动创建podspec文件;
- 需要手动git管理;
- 若要测试组件,需要手动创建测试工程。
手动创建测试工程的方案(优化方案一:产生引用关系)
- 创建一个工程Example;
- 把需要测试的组件,引入到工程,有两种方法:
方法一:手动拖入到工程,取消Copy items if needed
选项,让组件和工程产生引用关系,而不是拷贝一份,这样,在测试工程里面修改的组件代码也就是关联处的代码。
方法二:用pod把组件代码,安装到Example测试工程。编写Podfile文件,指名本地库的podspec路径,pod install安装。这种方法安装的组件,也是引用关系,而不是拷贝。show in Finder
就可以看到还是在本地库中。
使用pod模板(优化方案二:克隆模板)
优化方案一都是需要手动的。
优化方案二,使用命令pod lib create XMGFMBase
,表示从 https://github.com/CocoaPods/pod-template.git
克隆模板到 XMGFMBase
文件夹。
需要回答这么些问题:
What language do you want to use?? [ Swift / ObjC ]
> ObjC
Would you like to include a demo application with your library? [ Yes / No ]
> Yes // 需要一个测试用的Demo
Which testing frameworks will you use? [ Specta / Kiwi / None ]
> None // 用自己的
Would you like to do view based testing? [ Yes / No ]
> No
What is your class prefix?
> LF // 前缀
模板拷贝好之后,该创建好的文件都创建好了:
- 本地库(名字是按照输入的XMGFMBase)、podspec文件(据情况看source_file是否要修改);
- 测试工程Example(工程名是XMGFMBase)、Podfile、Podfile.lock。
拷贝好之后,我们需要做的是:
- 把组件源码文件拷贝到Classes文件夹中,删除ReplaceMe.m。
- 进入测试工程中Example文件夹中,pod install 安装本地库。
- 打开宿主工程,导入头文件测试。
优化方案二的好处解决了开始提到的三个问题:手动git、手动podspec、手动创建测试工程测试组件。方案二实现了全自动,只需要拷贝组件文件和把组件文件pod install 安装到宿主工程即可。