给工程添加多个target

在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即可

时间: 2024-09-30 06:34:13

给工程添加多个target的相关文章

iOS项目工程添加.a文件遇到的Dsymutil Error

将.a文件加入工程,很多教程讲的都是: 右键选择Add->Existing Files…,选择.a文件和相应的.h头文件.或者将这两个文件拖入XCode工程目录结构中,在弹出的界面中勾选Copy items into destination group's folder(if needed), 并确保Add To Targets勾选相应的target. 但实际上却没有那么顺利.添加过几次.a文件都遇到了麻烦,今天再次遇到—— ld: warning: directory not found fo

ios 添加多个target 管理 多个版本文件

1. 添加一个Target 这里是添加一个Test 项目 这里添加新的target Test与Release 也是同上的操作

[转帖]Cocos2d-x 3.0rc0 的Win32工程添加CocoStudio库

转自 http://www.cocoachina.com/bbs/read.php?tid=194668 前天, 在CocoaChina 2014春季大会上, 激动人心的Cocos2d-x 3.0和CocoStudio 1.3发布了. Cocos2d-x 3.0做出令人兴奋的性能, 易用性等一系列改进, CocoStudio 1.3带来了稳定性和新特性. 今天让我们看下如何在新建Cocos 3.0rc0的Win32的工程中添加CocoStudio的支持.  一 软件及其下载  1. Cocos2

cocos2dx 3.3 C++工程添加lua支持

准备工作: 1. 拷贝cocos2d-x-3.3rc0\external\lua整个文件夹到项目中(如myProject\cocos2d\external\lua) 2. 拷贝cocos2d-x-3.3rc0\cocos\scripting整个文件夹到项目中(如myProject\cocos2d\cocos\scripting) VS工程配置: 1. 解决方案中添加刚拷贝过来的libluacocos2d项目(添加现有项目: myProject\cocos2d\cocos\scripting\lu

Cocos2d-x 3.0工程添加Cocostudio库

1. 右键解决方案 -> 添加 -> 现有项目 -> 选择如下文件 \cocos2d\cocos\editor-support\cocostudio\proj.win32\libCocosStudio.vcxproj \cocos2d\extensions\proj.win32\libExtensions.vcxproj \cocos2d\cocos\ui\proj.win32\libGUI.vcxproj 2. 右键工程 -> 引用 -> 添加新引用 3. 右键项目 -&g

实现一个iOS项目中添加多个target,并制作马甲包。

公司项目中全部采用多个Target在一份项目代码中生成多个app端,之前项目中未曾使用过,问了几个朋友打过马甲包的朋友,也都没多Target搞过,因此自己试验整理了下target生成的整个过程,尽量步骤详细,大牛勿喷,小白共勉. 1.添加多个target 如下图,在项目配置TARGETS中,选中需要复制的target目标,右键选择Duplicate,然后就会出现一个叫* copy名字的target. 如下图 选择Duplicate only,出现如下图MoreTarget copy 修改More

如何创建 SVN 服务器,并搭建自己的 SVN 仓库 如何将代码工程添加到VisualSVN Server里面管理

如何创建 SVN 服务器,并搭建自己的 SVN 仓库,附链接: https://jingyan.baidu.com/article/6b97984dca0d9c1ca3b0bf40.html 如何将代码工程添加到VisualSVN Server里面管理,附链接:https://jingyan.baidu.com/article/456c463b33626d0a58314432.html 原文地址:https://www.cnblogs.com/fightKun/p/9993526.html

iOS开发之 Xcode 一个工程 Project 添加多个 target

http://www.360doc.com/content/14/1203/11/19119980_430056974.shtml# 根据项目需求,同一个工程有多个版本,每个版本只有细微的不同.所以,添加target,节省时间.1 选择 target 里面需要复制的目标,选择Duplicate,就会生成同时生成一个*** copy-info.plist和 *** copy的scheme 2 首先修改Xcode左上角的target名称:点击xcode左上角Run.Stop右边的工程名称,下拉框中选

vs2015 MFC工程添加消息响应函数

真不知道这PPT怎么描述的..最后窝找到了解决方法如上图.. 下次找MSDN解决问题好了..而且我们并不知道他所说的这个IDE到底是哪个厂商哪个版本的IDE这就很困惑 不过呢..它主要是让我们添加消息响应函数..我们知道这一点就好了.. 然后去查我们现在这个IDE工程该怎么做..