美文网首页iOS开发
iOS同一个Project构建多Target

iOS同一个Project构建多Target

作者: 刘是丑 | 来源:发表于2016-04-15 11:48 被阅读3066次

版权声明:本文为博主原创文章,未经博主允许不得转载。

最近产品线规划后,为了避免使用git维护多个分支所带来的高昂代价,需要在项目中引入多Target机制,即一个Project同时管理多个Target,达到git管理一个分支就可以开发多个产品的目的。

  • 如何创建多个Target
    1.通过File-->New-->Target,选择Empty Application模板,不过新建的target有自己的AppDelegate和main,如何与原来的AppDelegate和main复用需要进一步研究;

    2.选择一个原有的target,右键选择Duplicate,就会生成一个新的target。

  • 使用第2中方法生成target创建多个target之后的配置
    1.首先需要区分不同的target的名称,直接双击更改;

    2.Product->Schemes->Manage Schemes...弹出的面板中,将新建的target工程最后面那个shared按钮给勾上,就可以把自己的设置共享给团队的其他成员;

    3.多个target需要设置不同的Build Phases->Link Binary With Libraries/Copy Bundle Resources/Embed Frameworks,不同的target可能需要依赖不同的资源和静态库等;

    4.新建的Files或者资源等注意勾选需要添加到的target;

    5.新建target之后会自动生成xxInfo.plist文件,其所在文件夹默认在工程的最外层目录,根据情况是否需要更新期所在位置;

    6.工程中的InfoPlist.strings可以用来设置应用的多语言名称,同一个Project多target状态下使用InfoPlist.strings文件时,需要注意,不是生成多个不同名的xxInfoPlist.strings,而是需要在Resources->Strings多设置一层文件目录,有多少个target就生成几个文件夹,在每个文件夹中使用同名的InfoPlist.strings文件名,在第4点中Copy Bundle Resources中都添加InfoPlist.strings依赖;

    7.图片资源的images.xassets也需要根据不同的target设置多个,可以实现不同的target使用不同的AppIcon和LanuchImage等图片资源;

    8.如果两个target的相同点很多,用Duplicate,就可以把相关的设置全部拷贝过来,而不需要做过多的修改。

  • target之间会有各种区别,可以定义预编译宏,来区的不同target需要执行的不同代码,预编译宏可以在Build Settings>Preprocessor Macros(全局宏)定义,例如在target 1的Preprocessor Macros中设置TEST 1,target 2的Preprocessor Macros中设置TEST 2,在代码中可以使用

#ifdef TEST 1
// target 1 需要执行的代码
#elif  TEST 2
// target 2 需要执行的代码
#endif

相关文章

  • iOS同一个Project构建多Target

    版权声明:本文为博主原创文章,未经博主允许不得转载。 最近产品线规划后,为了避免使用git维护多个分支所带来的高昂...

  • 多target创建

    iOS Xcode 同一个Project创建多个target 目前在Xcode中创建target有两种方式,下面分...

  • target

    target和project的区别 同一个project可以有多个target,可以使用duplicate出来多个...

  • Project、Target、Workspace and Sch

    前言 今天有人问我Target和Project是什么关系?额。。。学习iOS开发都知道Target和Project...

  • iOS构建Target

    iOS构建多Target可以用来做马甲包,具有使用性。以下是构建新的Target步骤: Step 1: 拷贝一个新...

  • podfile使用事例

    platform :ios, '7.0' project './MyIM.xcodeproj' target 'M...

  • iOS 多Target环境配置

    iOS 多Target环境配置iOS 多Target环境配置

  • XCode PROJECT TARGETS

    Project与Targets iOS项目的配置管理,主要基于Project、Targets实现的。 Target...

  • Maven内置变量

    ${basedir} 项目根目录${project.build.directory} 构建目录,缺省为target...

  • iOS多Target开发相似App

    iOS多Target开发相似App iOS多Target开发相似App

网友评论

    本文标题:iOS同一个Project构建多Target

    本文链接:https://www.haomeiwen.com/subject/usknlttx.html