条件编译
日常开发时,出于某些原因,有时或许需要增加一些仅在测验环境下运转(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新知”,每天按时共享一个新知识,这儿只是同步,想要获得更好的体会就关注我吧!