iOS开发,发布或者调试版本与Configuration

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012581760/article/details/83899085

Debug与Release模式

  • Debug通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息,而且不做任何优化,为开发人员提供强大的应用程序调试能力。
  • Release通常称为发布版本,是为用户使用的,一般客户不允许在发布版本上进行调试。所以不保存调试信息,同时,它往往进行了各种优化,以期达到代码最小和速度最优。为用户的使用提供便利。

配置

#ifndef MacroHeader_h
#define MacroHeader_h
#ifdef DEVELOP
#define KSearchHost @“http://www.baidu.com
#elif BETA
#define KSearchHost @“http://beta.baidu.com
#else
#define KSearchHost @“http://release.baidu.com
#endif
#endif /* MacroHeader_h */

Build Configuration
Xcode默认会有2个编译模式,一个是Debug,一个是Release。
Release下不能调试程序,编译时有做编译优化,会比用Debug打包出来的运行快,另外包也会更小。
在这里插入图片描述

使用场景
碰到的使用场景是,我司的域名有3套:
针对开发时的域名
针对预上线时的域名
针对上线时对外公开的域名
这个时候,就会有多套域名,全部加起来可能有15个左右。每次打包时,就会特别混乱。(注释掉现在使用的域名,打开原本注释掉的那部分,出差错的可能蛮高的,而且不利于阅读)
这个时候,我们就使用它来针对3个环境下不同域名做配置。
配置Build Configuration
1 添加Configuration
这里我们添加DEVELOP、BETA、保留原有的(Release和Debug)。这里我们选择直接duplicate Debug的配置,因为Release的不能做断点调试。
在这里插入图片描述
2 查看Configuration
添加完第1步的Configuration之后,在Edit Scheme里就会看到新添加的配置项,就是刚开始Build Configuration看到的场景
3 更改Preprocessor Macros
第1步里我们直接复制了Debug的配置项,那这里的值就会有问题,需要自己设置。
在这里插入图片描述
5 在程序里配置对应的Configuration下不同域名
在这里插入图片描述
6 测试结果正确
运行程序,修改Scheme下不同的Configuration,就能得到不同的值,那结果就是正确的了。
参考文章链接

猜你喜欢

转载自blog.csdn.net/u012581760/article/details/83899085