多 Target 来进行 版本or环境 区分
有时候项目对于环境的切换或者是同一套代码不同的app的切换,每次手动改代码很不方便,而且容易出错。
xcode 可以添加 Target 来非常方便的进行切换
添加 Target 步骤
- 在项目设置页面,在 TARGETS 下列表中,选择需要复制的target 右键,选Duplicate,再选 Duplicate only
- 然后Targets 下会新增一个 ‘xxx copy’ 的target,选中后 单击可改名
- 并且会多了一个 ‘xxx copy-info.plist’ 文件
- 可以点击target 配置不通的app name、bundleID、icon 等等其他相关配置
Target 区分配置
- 在对应的 target 的 buildsetting 下找到 Preprocessor Macros, 该选择下面有个值 Debug 和 Release。在其中 Debug or Release 里面添加 某个参数=1,例如:在DEBUG 里面 添加 DEBUG=1。那么在scheme里面设置 build configuration 设置为 debug时,DEBUG 的值即为true,这个也可以用来切换线上线下环境
1
2
3
4
5#if DEBUG
// 测试环境
#else
// 线上环境
#endif - 在buildsetting 下的Other Swift flags 下也可添加标识符 ,在debug 和release 下添加即为true。
例如 如果在新target下的 debug下添加 -DDEBUG, 则DEBUG为true,debug release均添加 -DNEW,则不论debug还是release模式下, NEW均为true,这样就可以区分不同的target的配置一些1
2
3
4
5#if NEW
// NEW target
#else
// 非 NEW target
#endif
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!