iOS 一个项目添加多个TARGET

项目开发中会存在测试、正式等不同环境,需对应不同接口Host地址、项目名称等等配置。如果每次只有一个项目target的话每次打包的时候替换会很麻烦,而且容易出错。所以我们可以通过创建多个不同配置的target以区分不同环境。

1.复制原有target

复制原有target

 

iOS 一个项目添加多个TARGET

 

选择仅复制

 

 

iOS 一个项目添加多个TARGET

 

 

复制完成后出现一个copy的target

iOS 一个项目添加多个TARGET

 

方便区分可将target进行改名(直接在target上回车即可编辑)

iOS 一个项目添加多个TARGET

 

2.修改plist文件名

在复制target操作后不仅复制出了一个target,还会复制出一个对应的Info.plist文件

iOS 一个项目添加多个TARGET

 

将复制出来的plist文件改名,好对应区分

iOS 一个项目添加多个TARGET

 

3.为刚刚复制出来的target选择对应的plist文件

iOS 一个项目添加多个TARGET

 

选择刚刚改名的plist文件

iOS 一个项目添加多个TARGET

 

4.修改Scheme名,方便区分

选择Manage Schemes

iOS 一个项目添加多个TARGET

 

回车编辑

iOS 一个项目添加多个TARGET

 

完成

5.预定义宏已区分测试target(Build Setting–>Preprocessor Macros)

这个宏是一个全局宏,在所有/整个工程的代码中都是有效的,我们可以在这里添加上环境与处理的宏(例如:JW_TESTMARK,这个是随便自己取的)

iOS 一个项目添加多个TARGET

 

6.根据预定义的宏以区分环境,进行配置

#if defined (JW_TESTMARK)

//测试环境
#define AppMainUrl @"http://192.168.1.111:8080/"

#else

//正式环境
#define AppMainUrl @"http://api.baidu.com/"

#endif

打完收工

需要注意的

你的项目如果是xcworkspace,创建不同的target时,有个细节需要注意

1.需先将复制出来的target中libPods-XXXX删除

iOS 一个项目添加多个TARGET

 

2.然后在Podfile中添加新的target

 

iOS 一个项目添加多个TARGET

 

3.pod install 重新生成libPods-XXXX测试文件

iOS 一个项目添加多个TARGET

 

 

 

文章摘抄自:

https://www.jianshu.com/p/cd3727495928

 

 

iOS 一个项目添加多个TARGET

上一篇:SpringBoot获得application.properties中数据的几种方式


下一篇:Android studio提示this support library should not use a different version (25)问题的解决