条件编译
日常开发时,出于某些原因,有时或许需要增加一些仅在测验环境下运转(DEBUG)的代码。咱们能够在条件编译的协助下轻松做到这一点。
Xcode 默许内置了 Debug 环境,能够经过下边的方法进行判别。
#if DEBUG
// 这儿的代码仅在 Debug 下编译
#else
// 这儿的代码仅在 Release 下编译
#endif
怎么增加新的编译条件
首要咱们从项目导航器中挑选项意图根目录,选中当前项目(这儿是 Project,不是 Target),然后挑选 Build Settings,在查找框中输入 Active Compilation Conditions,就能看到了。
从图片中能够看出,Xcode 现已帮咱们预设了 DEBUG,所以咱们上边能够直接 #if DEBUG 来判别。
接下来咱们给 Release 也增加一下,双击 Release 后的空白区域,会有一个下拉框出来,点击加号,随意输入一个姓名,比方我这儿输入 REL,代表 Release。
这样设置之后,就能够经过 REL 来判别 Release 环境了。
#if REL
print("This is Release!")
#else
print("This is Debug!")
#endif
怎么增加新的环境?
或许有这么一种需求,代码既不在 Debug 下运转,又不在 Release 下运转,而是另一种新的环境,比方是在正式发布之前的 RC 环境。
咱们来创建一个新的装备,从项目导航器中挑选项意图根目录,选中当前项目(这儿是 Project,不是 Target),然后挑选 Info,在 Configurations 一栏中点击加号,按照你的需求挑选从 Debug 或许 Release 仿制一份装备,然后将装备重命名为 RC。
之后再回到 Active Compilation Condition 部分,为 RC 增加编译条件。
最终,咱们就能够在代码中运用 RC 了。
#if RC
print("This is RC!")
#elseif REL
print("This is Release!")
#else
print("This is Debug!")
#endif
点击下方大众号卡片,关注我,每天共享一个关于 iOS 的新知识
本文同步自微信大众号 “iOS新知”,每天按时共享一个新知识,这儿只是同步,想要获得更好的体会就关注我吧!




