【问题标题】:Difference Between Debugger and Target Output in XcodeXcode中调试器和目标输出的区别
【发布时间】:2014-01-08 03:21:57
【问题描述】:

当我在 Xcode 中运行我的应用程序时,输出区域经常会因警告而变得杂乱无章,就我而言,尤其是来自 iAds 的警告。由于我只对自己的调试语句感兴趣,有没有办法专门输出我想看到的内容?

我注意到有一个选项可以显示“调试器输出”或“目标输出”。这些有什么区别,它们可以帮助我尝试做的事情吗?

如果可能的话,另一个解决方案是阻止来自 iAd、自动布局等的警告。有没有办法抑制特定的警告?

【问题讨论】:

  • 修复生成警告的代码?

标签: ios xcode debugging output


【解决方案1】:

hv88 的意思是“调试器输出”是来自您在控制台中输入的 lldb 命令的文本,而“目标输出”是您的程序写入标准输出的所有内容。调试器无法区分“将您的代码写入标准输出的文本”和“将其他库写入标准输出的文本”之间的区别。它只是一个输出流。所以这组选择不会帮助你做你想做的事。

请注意,控制台窗口确实有一个 Find 条目,但在您专注于控制台窗口时键入 Cmd-F 之前您不会看到它。因此,如果您使用一些唯一且不难键入的字符串标记输出条目,则可以使用控制台查找快速导航到它们。

【讨论】:

  • 值得注意的是,如果您“编辑断点”并添加调试消息,那么它们也会显示在调试器输出中。
  • 正如@Honey 所说,将操作添加到“日志消息”类型的任何断点,然后填写消息并确保选择“将消息记录到控制台”。这与禁用 OS_ACTIVITY_MODE 的方案选项无关。
【解决方案2】:

“调试器输出”包含我们在调试时检查的值,即在调试时我们检查变量的值。该值可以通过单击弹出窗口中的“i”按钮在控制台上打印。

“目标输出”包含从 NSLog、cout、println 等打印的值。

“所有输出”包含来自 Debugger 和 Target 的值。

【讨论】:

    【解决方案3】:

    控制台显示程序输出并允许您向调试器输入命令。您可以使用窗格顶部的弹出菜单指定控制台显示的输出类型:

    所有输出:包括目标和调试器输出。

    调试器输出:仅包括调试器输出。

    目标输出:仅包括目标输出。 (例如 NSLog、printf)

    https://developer.apple.com/library/mac/recipes/xcode_help-debugger/articles/about_debug_area.html

    【讨论】:

    • 谢谢,我找到了这个网站,但它并没有真正回答我的问题,即 Target 和 Debugger Output 之间的区别是什么以及如何专门创建每种输出。
    • xcode 帮助“about_debug_area.html”的特定链接已损坏(因此它“有帮助”将您带到主要的 xcode 帮助页面)
    猜你喜欢
    • 2011-07-13
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 2015-05-02
    • 2020-12-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    相关资源
    最近更新 更多