在iOS开发中,对于同一个项目,会有不同的版本,如测试版和正式版,App Store版和企业版,这些版本之间大部分是相同的,只是部分有些差异。在调试或者打包测试时需要不停的修改参数,比较繁琐,其实Xcode就提供了一些途径来管理这些版本,这就是我们要提到的Target和Scheme。
Target的配置
Target可以看作是工程的输出目标,它保存了当前工程的所有配置,通过它来管理项目。
1.复制Target
选中一个Target,再右击菜单中选择Duplicate,复制当前的Target,新的Target以当前的名字+copy命名
2.修改名称
新的Target与复制Target的配置基本相同,区别在于Product Name和Info.plist File参数。同时,项目里自动添加了一个新的plist文件,Info.plist就指向这个新的plist文件,来保存工程的配置。多数情况下,我们修改Target 的名字和Product Name,选中Target后,回车,键入新的名称即可修改Targe名字。
3.配置参数
修改Target指向的plist文件,就可以修改Bundle Name和Bundle identifier。更多的是配置一下预处理参数,在Build Settings选项卡的Preprocessor Macros配置中,可以键入标识来区别版本,比如WGDEBUG=1,代码中就可以用这个参数区别正式与测试。
debug.png
当前的Targets
Screen Shot 2016-03-17 at 22.48.22.png
Scheme的配置
在Schem栏的菜单中选择Manage Schemes,对话框中点击"+"号,Target就选择复制的Target,Name键入Scheme的名称。现在项目就有2个Scheme了。
scheme.png
现在我们就有2个Scheme,分别对应2个Target。有两种方式来区别这2个版本
1.使用预处理参数
比如前边配置的WGDEBUG标识,判断版本,进行不同的处理
#if WGDEBUG
//code
#else
//code
#endif
2.配置Target的Plist文件,Build Settings。
注意,当前有多个Target时,如果导入文件,需要在对话框中的Add to targets里勾选新的Target。否则编译该Target时将会出错。
分享自简书. |
|