仅在分析应用程序时使用未声明的标识符
Posted
技术标签:
【中文标题】仅在分析应用程序时使用未声明的标识符【英文标题】:Use of undeclared identifier, only when profiling app 【发布时间】:2015-02-25 00:04:53 【问题描述】:我收到一个错误,但仅在使用模拟器分析我的应用时出现:
Use of undeclared identifier 'DEBUG'
关于如何解决这个问题的任何想法?唯一一次发生这种情况是在使用模拟器分析我的应用程序时。
【问题讨论】:
【参考方案1】:您可能正在RELEASE
模式下运行配置文件。 DEBUG
可以在编译时使用一些构建设置来定义。在 Xcode 中检查您当前的方案设置。在您的配置文件方案中,如果您的 Build Configuration
设置为除 DEBUG 以外的任何内容,这可能是罪魁祸首。如果您想检查是否存在 DEBUG,请尝试以下操作:
#ifdef DEBUG
// do some things
#endif
【讨论】:
谢谢!我犯了一个愚蠢的错误,错误地检查了 DEBUG 的存在。【参考方案2】:当我在 Release 中运行应用程序时也发生了这种情况。 我通过这一步解决它: 1. 选择您的目标; 2. 选择构建设置; 3. 搜索“预处理器宏”; 4. 检查[DEBUG=0]是否在Release行; 5. 如果没有,添加[DEBUG=0],然后再次运行。
【讨论】:
这对我来说完美解决了!我们使用 2 种方法来检查它是调试还是发布模式:#ifdef DEBUG
和 return DEBUG ? CLIENT_ID_DEBUG : CLIENT_ID_RELEASE;
而不是到处更改代码,确保为发布设置了 DEBUG=0。以上是关于仅在分析应用程序时使用未声明的标识符的主要内容,如果未能解决你的问题,请参考以下文章
浏览器:标识符输入已经声明,但仅在wordpress上有效?
使用 apportable 编译时未声明的标识符“UITextViewTextDidChangeNotification”
Android Studio 错误消息:使用未声明的标识符“accept4”