Xcode中使用Scheme管理项目

时间:2021-01-02 01:32:55

在iOS开发中,对于同一个项目,会有不同的版本,如测试版和正式版,App Store版和企业版,这些版本之间大部分是相同的,只是部分有些差异。在调试或者打包测试时需要不停的修改参数,比较繁琐,其实Xcode就提供了一些途径来管理这些版本,这就是我们要提到的Target和Scheme。

1.Target

Target可以看作是工程的输出目标,它保存了当前工程的所有配置,通过它来管理项目。

1.复制Target

选中一个Target,再右击菜单中选择Duplicate,复制当前的Target,新的Target以当前的名字+copy命名

2.修改名称

新的Target与复制Target的配置基本相同,区别在于Product NameInfo.plist File参数。同时,项目里自动添加了一个新的plist文件,Info.plist就指向这个新的plist文件,来保存工程的配置。多数情况下,我们修改Target 的名字和Product Name,选中Target后,回车,键入新的名称即可修改Targe名字。

3.配置参数

修改Target指向的plist文件,就可以修改Bundle NameBundle identifier。更多的是配置一下预处理参数,在Build Settings选项卡的Preprocessor Macros配置中,可以键入宏定义来区别版本,比如WGDEBUG=1,代码中就可以用这个参数区别正式与测试。
Xcode中使用Scheme管理项目

当前的Targets
Xcode中使用Scheme管理项目

2.Scheme

在Schem栏的菜单中选择Manage Schemes,对话框中点击”+”号,Target就选择复制的Target,Name键入Scheme的名称。现在项目就有2个Scheme了。
Xcode中使用Scheme管理项目
在代码中就可以使用类似

#if WGDEBUG
//code
#else
//code
#endif

判断版本,进行不同的处理,或者配置Target的Plist文件。使用不同的Scheme来切换不同的版本。
注意,当前有多个Target时,如果导入文件,需要在对话框中的Add to targets里勾选新的Target。否则编译该Target时将会出错。