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

1.复制原有target

复制原有target

 

iOS 一个项目添加多个TARGET

 

选择仅复制

 

 

iOS 一个项目添加多个TARGET

 

 

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

iOS 一个项目添加多个TARGET

 

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

iOS 一个项目添加多个TARGET

 

2.修改plist文件名

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

iOS 一个项目添加多个TARGET

 

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

iOS 一个项目添加多个TARGET

 

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

iOS 一个项目添加多个TARGET

 

选择刚刚改名的plist文件

iOS 一个项目添加多个TARGET

二、复制plist,配置plist

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

iOS 一个项目添加多个TARGET

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

iOS 一个项目添加多个TARGET

 

4.修改Scheme名,方便区分

选择Manage Schemes

iOS 一个项目添加多个TARGET

 

回车编辑

iOS 一个项目添加多个TARGET

 

完成

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

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

iOS 一个项目添加多个TARGET

 

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删除

iOS 一个项目添加多个TARGET

 

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

 

iOS 一个项目添加多个TARGET

 

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

iOS 一个项目添加多个TARGET

 

 

 

文章摘抄自:

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

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

 

相关文章:

  • 2021-09-13
  • 2021-12-01
  • 2021-04-26
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-05
猜你喜欢
  • 2021-09-30
  • 2022-01-02
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2021-10-20
相关资源
相似解决方案