码迷,mamicode.com
首页 > 其他好文 > 详细

给工程添加多个target

时间:2016-05-19 21:03:47      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

在iOS开发过程中,我们可能遇到这种情况:一些功能、一些SDK只有在调试的时候需要,如使用FBMoryProfiler进行内存检测,利用第三方的SDK搜集崩溃日志等等。若把这些功能和SDK集成到整个项目,就会造成项目臃肿,甚至不能通过AppStore的审核。这时候我们可以通过多个target,把用户不需要的功能部分仅仅放入做开发用的target中。

一、创建多个target(两种方式)

  方式一:复制一个和当前target完全相同的target

  右击当前target -> Duplicate,这是会生成一个xxx copy的target,resource里也会生成一个xxx copy.plist的属性文件,这个新的target和原有target是完全一致的。

  方式二:创建一个全新的target

  1、 点击target列表下方的“+”号,首先会让你选择target的类型, 既然我一直所指的都是程序本身, 那么自然选择Application了(至于其他的嘛, 有兴趣的自己研究吧, 比如我们可以把程序中的部分提取成一个Static Library).

   2、 Next后, 会让你输入一个新的Target的名字, 而不像复制的方法中, 默认生成 xxxxx copy这样的target名.

   3、 但是这样生成出的Target几乎是空的. Copy Bundle Resources, Compile Sources, Link Binary With Libraries里面都没有任何内容. 编译设置也是完全原始的状态.

   4、可以通过拖拽内容到这些target的设置中, 以及调整编译选项来完成Target的配置.  

 

二、自定义条件编译宏

  新的target创建完成后,我们往往希望在对不同的target进行不同的编译,这时就需要使用条件编辑。

  1、添加自定义条件编译宏

  选择新建的target -> build setting -> 在Apple LLVM7.1 - Preprocessing下找到Preprocessor Macros,双击后添加一个自定义的变量(如:DEVELOPER)

  技术分享

  这时候便可使用条件编译:

  

#ifdef    DEVELOPER
    code
#endif

 

三、把需要在新的target中使用的SDK和源文件加入新的target中。

  在使用cocoaPods添加第三方框架时,可能会因为配置改变而出现编译时链接错误,这时只需要将下图中的配置选择none,重新pod install即可

技术分享

 

给工程添加多个target

标签:

原文地址:http://www.cnblogs.com/yueyuanyueyuan/p/5509790.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!