iOS项目分多个target

参考

一个项目经常会分多个环境,最常见的是生产环境与开发环境,甚至更多个环境;如果每次都修改配置文件,各种第三方配置等比较麻烦。

1. 复制

iOS项目分多个target_第1张图片
Snip20181211_3.png

iOS项目分多个target_第2张图片
Snip20181211_2.png

2. 修改名字

iOS项目分多个target_第3张图片
Snip20181211_4.png

3. 修改scheme

iOS项目分多个target_第4张图片
Snip20181211_5.png
iOS项目分多个target_第5张图片
Snip20181211_8.png

4. 修改plist文件

复制新的target后 在工程里会自动生成一个对应的plist文件, 一般在工程文件目录下方,然后修改它的名称。

iOS项目分多个target_第6张图片
Snip20181211_9.png

去除引用关系

注意别选择Move to Trash,否则会删除它

iOS项目分多个target_第7张图片
Snip20181211_10.png

重新将刚去除引用关系的plist文件引入

iOS项目分多个target_第8张图片
Snip20181211_11.png

新的plist文件与新target对应

iOS项目分多个target_第9张图片
Snip20181211_12.png
iOS项目分多个target_第10张图片
Snip20181211_13.png

5. 对不同环境设置描述变量

Debug 和 Release 都设置一下,没必要一定是1 这只是个标识 方便工程中配置不同环境使用

iOS项目分多个target_第11张图片
Snip20181211_14.png

6. 使用

#if xxxDEV
///渠道-开发环境
static NSString *const BAIDUChannelId = @"开发环境: 2.1.0";
///jpush channel
static NSString *const JPushChannel = @"xxxDEV";
///jpush certification
static BOOL const JPushApnsCertProduction = NO;

#else
///渠道-生产环境
static NSString *const BAIDUChannelId = @"生产环境: 2.1.0";

///jpush channel
static NSString *const JPushChannel = @"App Store";
///jpush certification
static BOOL const JPushApnsCertProduction = YES;

#endif

你可能感兴趣的:(iOS项目分多个target)