iOS 一个项目添加多个TARGET

项目开发中会存在测试、正式等不同环境,需对应不同接口Host地址、项目名称等等配置。如果每次只有一个项目target的话每次打包的时候替换会很麻烦,而且容易出错。所以我们可以通过创建多个不同配置的target以区分不同环境。

1.复制原有target

复制原有target

 

 

选择仅复制

 

 

 

 

复制完成后出现一个copy的target

 

方便区分可将target进行改名(直接在target上回车即可编辑)

 

2.修改plist文件名

在复制target操作后不仅复制出了一个target,还会复制出一个对应的Info.plist文件

 

将复制出来的plist文件改名,好对应区分

 

3.为刚刚复制出来的target选择对应的plist文件

 

选择刚刚改名的plist文件

二、复制plist,配置plist

复制plist,重新命名,然后配置对应的Target

选择对应的Target,Build Settings,搜索info ,在info.plist File修改对应的plist文件

 

4.修改Scheme名,方便区分

选择Manage Schemes

 

回车编辑

 

完成

5.预定义宏已区分测试target(Build Setting–>Preprocessor Macros)

这个宏是一个全局宏,在所有/整个工程的代码中都是有效的,我们可以在这里添加上环境与处理的宏(例如:JW_TESTMARK,这个是随便自己取的)

 

6.根据预定义的宏以区分环境,进行配置

复制代码
#if defined (JW_TESTMARK)

//测试环境
#define AppMainUrl @"http://192.168.1.111:8080/"

#else

//正式环境
#define AppMainUrl @"http://api.baidu.com/"

#endif
复制代码

打完收工

需要注意的

你的项目如果是xcworkspace,创建不同的target时,有个细节需要注意

1.需先将复制出来的target中libPods-XXXX删除

 

2.然后在Podfile中添加新的target

 

 

3.pod install 重新生成libPods-XXXX测试文件

 

 

 

文章摘抄自:

https://www.jianshu.com/p/cd3727495928

http://www.cocoachina.com/ios/20160331/15832.html

 

posted @   玉米炖排骨  阅读(725)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示