XCode项目多Target开发指南


声明: 转载注明本人出处, 请在方便的情况下尽量告知.

尊重原创, 共同进步.


立意

不少公司开发的项目有面对多客户/市场的需求, 然而基本功能完全一致的情况下, 可以考虑多Target开发, 减少开发和维护的人力成本.

考虑到目前业界的实际情况, 本文主要以Objective C为主要开发语言, Swift为后续加入的开发语言来做示例. 其它情况请自行参考.

流程

1. 创建

创建第一个项目FirstProduct, 如图:

2. 添加Swift配置

添加Swift文件, OC调用和基本的配置内容, 如图:

初次运行结果如下:

3. 创建第二个Target

基本的思路就是"搬砖"(复制-粘贴ORZ).

复制Target, 复制Schemes, 修改新项目的Bundle Indentifier:

复制图片资源库, 修改其内容及Target指向. 原资源库仅指向First Target:

复制启动页, 修改其内容及Target指向. 原启动页仅指向First Target:

好了, 可以尝试运行了.

结果肯定是失败. XD

因为我们还没有修改完.

4. 修改第二个Target的项目配置

目前Demo只做简单的项目名称替换, 更复杂的可以考虑使用User Defined Settings配置项及Configurations来做.

这样就可以适配不同的语言, 甚至完成不同的打包需求了. 因其不在本文范围内, 不做进一步扩展.

More...

你以为这就可以佛祖保佑, 永无Bug, 完美运行了?

只能说Too Young, too simple.

别忘了我们的项目是OC和Swift混编的, 而Swift是用Module进行模块系统划分的. 至于专业解说, 请参考猫·仁波切这篇文章

所以FirstProduct的Module, 在SecondProduct里不一定能用, 我们需要稍微改造一下.

  • 这个是FirstProduct原来的Swift.h引用

  • 这个是SecondProduct修改的Swift.h引用

当然你也可以考虑不同的Target生成使用不同的Module文件, 然后根据系统配置宏来做更为复杂的配置功能.

不过本文就是个小Demo, 就不做这种高难度动作了.

终于可以运行了, 谢天谢地. 顺便祝大家2018年开工大吉, 狗富贵, 勿相忘. 旺旺旺!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值