Xcode项目的多Target管理

栏目: IOS · 发布时间: 5年前

内容简介:一般一个项目会有测试版本和生产版本,有的还可能会有预生产版本等,不同的版本对应的一些参数设置也是不同,如果仅是在一个Target上管理,一是麻烦,二是一旦疏忽了,就容易出错。所以,这种场景下,多Target就可以很好的解决这个问题,不同的Target设置不用的参数,打包的时候,只需要对不同的Target打包就可以了。1.创建Target,新建项目之后,会有一个默认的Target,选中此Target,右键;

一般一个项目会有测试版本和生产版本,有的还可能会有预生产版本等,不同的版本对应的一些参数设置也是不同,如果仅是在一个Target上管理,一是麻烦,二是一旦疏忽了,就容易出错。所以,这种场景下,多Target就可以很好的解决这个问题,不同的Target设置不用的参数,打包的时候,只需要对不同的Target打包就可以了。

如何去设置多Target

1.创建Target,新建项目之后,会有一个默认的Target,选中此Target,右键 Duplicate ,会生成一个 xxxx copy 的Target,同时,也会生成一个 xxxx copy-Info.plist ;

Xcode项目的多Target管理
2.修改新Target的名字,选中 xxxx copy Target,再次点击修改名字为 xxxx_production

;

Xcode项目的多Target管理
3.修改新 xxxx copy-Info.plist 的名字为 xxxx_production_info.plist

Xcode项目的多Target管理

4.此时,新的Target会显示没有对应的info文件,手动选择刚才修改的info文件;

Xcode项目的多Target管理
5.修改Xcode左上角的Target的名字,首先点击当前的Target,在弹出的Target列表下方,选择 Manage schemes ,然后将 xxxx copy 修改为 xxxx_production

;

Xcode项目的多Target管理
Xcode项目的多Target管理

6.至此,多Target添加完成,注意在向Xcode导入文件的时候,选择对应的Target;

Xcode项目的多Target管理

7.添加预处理宏,来判断当前的Target;

1. 在项目的Build Settings里配置Swift Compiler - Custom Flags,展开Other Swift Flags,在Debug右侧输入“-DDEBUG”。也可以“-D DEBUG”,但是不能有赋值,如:“-DDEBUG=1” 或 “-D DEBUG=1”都是无效的。(针对Swift)
复制代码
Xcode项目的多Target管理
2. 在项目的Build Settings里配置Apple LLVM x.x - Preprocessiong,展开Preprocessor Macros,在Debug右侧默认包含“DEBUG=1”,若没有请手动加入。(针对Objective-C、C、C++)
复制代码
Xcode项目的多Target管理
提示:在代码编辑器中,#if 分支的代码,条件成立的会有代码着色。
复制代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

八年级数学(华东师大版)-解题升级-解题快速反应一本通(新课标)

八年级数学(华东师大版)-解题升级-解题快速反应一本通(新课标)

孙丽敏等编 / 吉林教育出版社 / 2004-6 / 10.0

本书将与知识点、重点、难点和考点有关的典型题做全析全解,是具有解题题典性质的助学读物。但本书又优于解题题典,不仅展示解题过程,更详细地提供了解题思考过程和切入点的选择方法,教方法导引思路的功能更强。 学生要提高解题能力,必须具备两个条件:一是打好基础,二是能够运动所学知识分析问题和解决问题。本书用例题解析解说知识点、重点、难点和考点,同时提供解题思考过程,在打基础中激活能力,在解题实......一起来看看 《八年级数学(华东师大版)-解题升级-解题快速反应一本通(新课标)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试