iOS 一个工程实现多个Target

我们公司的项目需要涉及多地市,大部分功能是一样的,但是每个地市又有自己的特色,最基本的就是App的icon和LaunchImage的不同,这样讲大家应该会明白···

用到多个target其实还有很多场景,比如美团的买家和卖家端,滴滴的乘客和司机端,boss直聘的牛人和招聘端,都可以用这样的方法实现,不仅节省了很多时间,还提高了开发效率···

Demo地址:点击打开链接

接下来,我就从一个Demo给大家详细分析一下···

1.创建Project

首先,我们需要像往常一样创建一个project,

iOS 一个工程实现多个Target_第1张图片

我起的名字叫Multi-TargetDemo,如下图:

iOS 一个工程实现多个Target_第2张图片

2.新建一个target

iOS 一个工程实现多个Target_第3张图片

选中Single View Application

iOS 一个工程实现多个Target_第4张图片

和project一样起个名字

iOS 一个工程实现多个Target_第5张图片

完成之后我们可以看到

iOS 一个工程实现多个Target_第6张图片

3.将共同的功能实现在Multi-TargetDemo中,Target2具有自己的特色。

需求是Multi-TargetDemo实现view是红色的,Target2实现view是蓝色的简单功能。


首先要做的就是AppDelegate关联Taget2

iOS 一个工程实现多个Target_第7张图片

其次就是给Target2的AppDelegate中的AppDelegate改个名字并继承与AppDelegate,实现父类的初始化方法~

iOS 一个工程实现多个Target_第8张图片

iOS 一个工程实现多个Target_第9张图片

iOS 一个工程实现多个Target_第10张图片

此时我们基本上是完成了关联。

那我们如何区分两个Target?

4.区分Target的小技巧

这个地方我写错了,Debug和Release都需要定义,否则生产的时候就会报错!

iOS 一个工程实现多个Target_第11张图片

如何使用?

iOS 一个工程实现多个Target_第12张图片

运行不同的Target,出来不同效果,

iOS 一个工程实现多个Target_第13张图片iOS 一个工程实现多个Target_第14张图片

就ok了~

如有不足,请朋友指正!谢谢!


你可能感兴趣的:(iOS,经验)