iOS开发 技术集锦

xcode增加多个Target

2016-06-02  本文已影响1621人  地选之猿

1.创建新的target

(1)方法一:File->New->Target,然后选中其中一个模板创建,app类型的Target,可以选空模板.

(2)通过对原有的target做duplicate,点击原来的项目根目录,右侧会出现Project和Target,选中Target右键,选择duplicate,复制一份.本文Demo是用这种方法做的.

2.改名

生层新的target后,系统自动给新的target命名为A copy,(PS:A为原始工程名)同时会自动生成一个A copy.plist之类名字的plist文件.带有copy这种命名不太友好,所以这里我们需要修改.

步骤1:点击xcode左上,选择运行设备的左方,在下拉菜单中选择Manage Schemes...

步骤2:选择A copy那一行,这里我是已经修改过的

敲回车键,最好是回车键,网上有些教程写着点两下,可折腾死我了,回车键,修改名字,简单明了.

步骤3:Close 弹出界面,然后点击Project下的A copy target ,回车编辑

可以点击ALite的Setting,搜索Packaging下的Private Headers Folder Path

看看是不是已经变成ALite.app/PrivateHeaders

3.改info.plist名

原有的A copy .plist 很明显不友好,我的做法是将该文件索引删除,记住是索引,然后将这个文件Add到info.plist下,添加时选Add 到 ALite中,然后改名为ALite-info.plist.

这时一般的就是两个应用了,当然,必须要改Bundle Identifier啊,还有ProductName

写代码的时候为了区别两个target,可以在target中的Build Setting->Preprocessor Macros 中定义预编译宏,比如 MACRO

然后在代码中就可以这样写

#if defined (MACRO)

NSLog(@"ALite");

#else

NSLog(@"A");

#endif

PS:本文主要参考自:http://blog.csdn.net/yongyinmg/article/details/40985341

还有其他的网络贡献者,下段是copy自上方链接.

其他:Build Phases(各target编译所包含的内容,需要注意的是,如果创建了target B后,再往A里面添加资源或文件,target B中不会自动增加这些资源,需要手动添加)

1.Compile Sources

需要编译的代码文件

2.Link Binary With Libraries

编译所依赖的库

3.Copy Bundle Resources

编译需要的资源

每个target可以根据具体需要增减里面的内容

上一篇下一篇

猜你喜欢

热点阅读