实现一个iOS项目中添加多个target,并制作马甲包。_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 实现一个iOS项目中添加多个target,并制作马甲包。

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

 2017/9/30 11:43:10  三胖谁怕谁  程序员俱乐部  我要评论(0)
  • 摘要:公司项目中全部采用多个Target在一份项目代码中生成多个app端,之前项目中未曾使用过,问了几个朋友打过马甲包的朋友,也都没多Target搞过,因此自己试验整理了下target生成的整个过程,尽量步骤详细,大牛勿喷,小白共勉。1.添加多个target如下图,在项目配置TARGETS中,选中需要复制的target目标,右键选择Duplicate,然后就会出现一个叫*copy名字的target。如下图选择Duplicateonly
  • 标签:实现 iOS 一个 项目

公司项目中全部采用多个Target在一份项目代码中生成多个app端,之前项目中未曾使用过,问了几个朋友打过马甲包的朋友,也都没多Target搞过,因此自己试验整理了下target生成的整个过程,尽量步骤详细,大牛勿喷,小白共勉。

1.添加多个target

如下图,在项目配置TARGETS中,选中需要复制的target目标,右键选择Duplicate,然后就会出现一个叫* copy名字的target。

如下图

选择Duplicate only,出现如下图MoreTarget copy

修改MoreTarget copy为我们所需要的名字,我这里改为MoreTarget旗舰。然后接下来选择左上角如下图

点击Manage Schemes进去修改MoreTargets copy为MoreTargets旗舰,注意修改选中MoreTargets copy,点击一下后,稍等再点击方可以进去编辑修改。

改名如下图,记得勾选shared,然后close即可。

然后,我们项目中因为用到cocopod,为了两个target都可以使用pod,我们在项目左侧podfile中添加字段

target 'MoreTargets旗舰' do

end

DBA6239E009A80.png" alt="">

 

command+s保存后,跟终端pod install。

最终结果我们点击project--MoreTargets--info,如下图所示,

等于我们新建的target,MoreTarget旗舰绑定了相应的debug和release环境。请注意我们项目左侧FrameWorks下面出现新的MoreTargets旗舰对应的plist文件MoreTargets copy-Info.plist,我们单击修改为我们MoreTargets旗舰对应的名字,如下图

然后我们点击TARGETS--MoreTargets旗舰--General--Identify下,点击选择我们刚才修改的plist文件,如下图选择即可。

2.接下来,我们配置两个target不同的app name,和不同的bundleIdentifier。如下图,我们将MoreTargets旗舰的bundelid改为com.targetqijian.www.MoreTargets,

此时分别选择运行不同的targe,会在模拟器上安装为两个不同的App。

3.然后我们修改不同target 不同的AppIcon和LanuchImage,分别拖进去相应图片,如下图

我们点击运行后,桌面如下图两个app,一个是MoreTargets应用,一个是MoreTargets旗舰应用,如下图

最后,后面你添加文件的时候,根据自己需要添加到对应的target就可以了。但是在代码中怎样区分两个target呢?我们可以添加一个预编译宏来解决。target->Build Setting,搜索:Preprocessor Macros,设置Debug和Release里的预编译宏内容,比如QIJIAN=1表示一个target版本(注意=前后不能右空格,有空格会编译不过),程序中对不同版本这样判断,如下图

最后,完毕。两个不同的target共用同一份代码,后续打包可根据需要配置不同的开发者账号即可。

 

发表评论
用户名: 匿名