场景
1.公司根据业务需要开发3款甚至以上的项目。
2.项目的相似程度在80%以上,有些只是换换icon、颜色、字体等。
3.首先有些人可能会想到组件化,项目新建工程copy代码,可以做但是开发成本太高,其中一个组件有问题,10几个项目都要跟着改,每次创建新工程即耗时不好维护,弊端太多,不能接受。
解决
1.采用多Target方式来
2.当然最好是组件化+ 多Target模式
3.这篇文章我们只聊第一种方案,第一种完全可以满足,不讲理论知识,只看实战步骤。
开始
1.在我们已有的Targets中,鼠标右键选择Duplicate,弹出框中根据公司的业务选择iphone(Duplicate only) ipad(and Transition to ipad)
2. 修改Targets名称,两个地方,看下图
3.为新工程新建一个文件存放相关文件,建议与主工程平级,方便维护
4.设置plist路径与新targets关联,有两种方法,推荐用下面这种,第一种就不介绍了。
到这里先试着让新工程运行下
5.我们给每个项目打个标签,用来区分项目 targets build setting Preprocessor
6.配置不同的配置文件,例如颜色,字体,json文件等,用来快速构建差异化的项目,当然界面布局也可配置。
图片icon管理,在当前target下创建Assets 命名规范target+后缀 HHTestDemoAssets 比较方便绑定
资源文件的名字所有target都要统一,当xocde切换项目时,系统会自动绑定当前target的资源文件
代码中早已写好加载资源名称的标识,如果名字不统一标识肯定找不到
一般都会配置这些资源:color.plist/ sizeFont.plist/ func.json /app图标、启动图、UI icon等
7 .Pods管理,配置完成记得pod install
整体配置并没什么难点,配置过程中需要细心,最后多运行下跑跑看有没有问题
后面我会把加载颜色,字体,配置文件等,代码也贴下,简单的说就是加载json plist资源
此文献给需要此种场景的朋友,也当自己做个随记,后续我在更新。