iOS如何复制一份新的target
2019-06-25 本文已影响0人
095b62ead3cd
在项目中有时候会出现这样的问题,两个项目基本公用一套代码,只是里面有些配置,界面稍有不同,这个时候如果直接复制一份代码出来,当然也能够解决问题。但是,如果一个需求需要在两份代码中同时实现,那就需要改两次相同地方的代码,这就比较麻烦了。
另外还有一个问题,有些人的开发和生产环境不想来回的切换,觉着这样太麻烦。基于以上的问题,我们可以复制一个target,在有需要的地方更改就行了,这样既能够保证相同代码的同步,也可以实现开发与生产环境的分离。下面就这种方式的使用,做个简单的说明。
1、复制target。
选中你所要复制的target,点击右键,选择Duplicate(此处下一步只选择Duplicate Only),然后General中的信息就可以按照你新项目的进行修改了。如果你的项目使用pod管理的,需要把General中的libPods-XXX.a删除。
![](https://img.haomeiwen.com/i1521229/696224df86d207e8.png)
![](https://img.haomeiwen.com/i1521229/af3bcc7aa8830104.png)
![](https://img.haomeiwen.com/i1521229/c46da2f05a4a5326.png)
2、修改复制出来的info.plist文件,配置Assets
![](https://img.haomeiwen.com/i1521229/c1334f5c6bbab851.png)
3、target名称可以进行重命名。另外,在Identity里为刚刚复制的target选择info.plist文件。
![](https://img.haomeiwen.com/i1521229/ba1623647d54bb21.png)
4、修改Scheme名称,方便切换运行不同的target
![](https://img.haomeiwen.com/i1521229/5363868f06ca5847.png)
5、利用已定义宏进行区分target(配置地址:Build Setting–>Preprocessor Macros),此处写在pch文件中,见下图二
![](https://img.haomeiwen.com/i1521229/3d0db10d37391d7b.png)
![](https://img.haomeiwen.com/i1521229/ab320555f12863ba.png)
6、如果是pod管理的项目,需要在podfile中添加进新复制的target,然后终端运行pod install
![](https://img.haomeiwen.com/i1521229/10d01503899438d2.png)
至此,整个项目的target复制工作完成。