「Swift」Xcode多Target创建

news/2024/7/20 20:09:01 标签: xcode, ios, Swift
前言:我们日常开发中会使用多个环境,如Dev、UAT,每个环境对应的业务功能都不同,但每个环境之间都只存在较小的差异,所以此时可以使用创建多个Target来实现,每个Target对应这个一个App,可以实现一键切换不同环境
步骤一:复制原有Targe

因为每个环境通常有许多相似点,这样的方式也就最为便捷
右键选择原有Target,点击Duplicate进行复制
在这里插入图片描述
复制后会出现一个copy的新Target
在这里插入图片描述

在Scheme处也会出现一个copy的新Scheme
在这里插入图片描述

步骤二:修改Target名称

此处修改为Debug版本为例
选中copy出来的Target,然后再次点击一次进入编辑状态,进行名称编辑
在这里插入图片描述
修改后进行回车确认,新Target名称则修改完成
在这里插入图片描述

步骤三:修改Scheme名称

修改完Target名称后,点击Scheme会发现并没有一起同步过来,所以Scheme名称也需要进行修改
点击Scheme下方的Manage Schemes
在这里插入图片描述

进入了Schemes管理页面
在这里插入图片描述

用修改Target名称相同的方法,先选择copy出来的Scheme,再次点击后进入编辑状态,进行修改成和修改后Target一样的名称

在这里插入图片描述

步骤四:修改Info文件名称、路径

copyTarget后info文件也会被复制,但通常都会出现在根路径上
在这里插入图片描述
修改copy的info文件名称为DebugInfo,在Show in Finder中将DebugInfo并拖动至原有Info文件的路径下,并通过Add Files to “XXXproject”...添加至项目中
在这里插入图片描述

步骤五:修改Target配置信息

选择原有Target,再点击进入Build Settings配置信息,输入info进行筛选,找到这个属性,复制其属性值
在这里插入图片描述

在选择DebugTarget,也进入Build Settings配置信息,输入info进行筛选,找到对应属性,将属性值更改为BlogProject/DebugInfo.plist
在这里插入图片描述

步骤六:编译检查

Bulid Success编译成功!新的Target即简单创建完成

参考资料:XCode之多个Target
后续“多个Target分别对应自己的AppIcon”、“桥接文件的设置”、“在代码中区分Target进而使用不同的业务逻辑,比如不同环境对应不同Host”等设置也可以在这个参考资料中进行查看

如果该文章对你有所帮助,可以点赞、收藏并且关注一下! 后续会持续更新更多技术内容


http://www.niftyadmin.cn/n/5257770.html

相关文章

(第27天)Oracle 数据泵转换分区表

在Oracle数据库中,分区表的使用是很常见的,使用数据泵也可以进行普通表到分区表的转换,虽然实际场景应用的不多。 创建测试表 sys@ORADB 2022-10-13 11:54:12> create table lucifer.tabs as select * from dba_objects;Table created.sys

剑指 Offer(第2版)面试题 26:树的子结构

剑指 Offer(第2版)面试题 26:树的子结构 剑指 Offer(第2版)面试题 26:树的子结构解法1:递归解法2:深度优先搜索序列上做串匹配 剑指 Offer(第2版)面试题 26&a…

Geotrust中的dv ssl证书

DV SSL数字证书是入门级的数字证书,Geotrust的子品牌RapidSSL旗下的SSL数字证书产品都是入门级的SSL数字证书——DV基础型单域名SSL证书和DV基础型通配符SSL证书。今天就随SSL盾小编了解Geotrust旗下的DV SSL证书。 1.Geotrust旗下的DV基础型单域名SSL证书能够保护…

pymysql代替mysqlclient,解决mysqlclient因版本不兼容无法安装成功而无法连接mysql的问题

pymysql代替mysqlclient,解决mysqlclient因版本不兼容无法安装成功而无法连接mysql的问题 原因:版本或者环境兼容问题,导致如centos或者其他Linux无法安装mysqlclient模块 解决办法:安装pymysql作为替代 在Django中连接MySQL数…

pytorch-0.4.0上古版本安装参考

由于pytorch previous-versions中已经不显示该版本,而且网络上信息很少,配环境给我配麻了,所以提供一个参考。 我的配置: cuda 9.0 gcc 4.8.5 安装过程: conda create -n torch040 python3.6.6 conda install pytorc…

go原子级内存操作

原子级内存操作是在多线程并发执行时,能够确保某个内存操作是不可中断的操作。在计算机系统中,CPU执行指令是基本的原子操作,即一个指令的执行是不可被中断的。然而,在多线程并发的环境中,一个线程执行的指令可能被其他…

没有明确的报错信息,阿里云国际版Windows服务器无法远程连接

在远程连接失败时,如果您没有收到系统返回的报错信息,并且ECS实例是运行中的状态,然后再根据以下步骤进行排查: 步骤一:使用阿里云Workbench工具测试远程登录 步骤二:检查是否有收到黑洞通知 步骤三&…

Java面试题11-20

11、""和equals方法究竟有什么区别? (单独把一个东西说清楚,然后再说清楚另一个,这样,它们的区别自然就出来了,混在一起说,则很难说清楚) 操作符专门用来比较两个变量的…