Xcode中使用Target管理项目

在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时将会出错。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,268评论 19 139
  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 4,601评论 0 12
  • 需求:当两个甚至两个以上的app存在小差异时,可以在一个工程(project)创建多个target每个target...
    寸光片静阅读 30,442评论 21 70
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,265评论 2 33
  • 上上期《奇葩说》的辩题是:分手该不该当面说。 范湉湉的一番话让我感触很深,大概因为也曾经历过吧,她说: “如果我早...
    程不二阅读 307评论 0 0