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