检测iOS应用程序是否在没有预处理器宏的情况下运行Debug或Release版本,以进行单元测试?

时间:2016-02-01 09:25:02

标签: ios xcode macros

我已经看到了很多答案,并且熟悉使用预处理器宏来检查我是处于调试模式还是发布模式,但是我很想在这些情况下进行单元测试,所以我喜欢一种方法检查我是否可以嘲笑。

我们可以在不使用#if defined的情况下检测调试,临时或发布吗?

1 个答案:

答案 0 :(得分:3)

您可以在info.plist中使用值configuration,其值为${CONFIGURATION}。确保在项目构建设置中设置plist文件的路径。请参阅下面的图片以供参考。

plist image

info.plist link image

然后,您可以访问infoDictionary来获取配置。代码如下

let bundle : NSBundle = NSBundle.mainBundle()
let configuration : String = (bundle.infoDictionary!["configuration"] as! String)  // configuration is key you set in plist file

configuration将是一个字符串,用于存储您的方案中的构建配置。