iOS 11 + Xcode 9 中的 refreshPreferences HangTracerEnabled / HangTracerDuration 消息

refreshPreferences HangTracerEnabled / HangTracerDuration messages in iOS 11 + Xcode 9

当更新到 iOS 11 时,在 iPhone 中的 运行 应用程序之后,我在 Xcode 控制台中收到此消息:

SibDiet[924:111682] refreshPreferences: HangTracerEnabled: 0
SibDiet[924:111682] refreshPreferences: HangTracerDuration: 500
SibDiet[924:111682] refreshPreferences: ActivationLoggingEnabled: 0 ActivationLoggingTaskedOffByDA:0

现在我在每个模拟器和应用程序中都收到此消息。

我该如何解决这个问题?

您可以通过在目标上单击鼠标左键来隐藏此消息,然后单击 Edit Scheme

之后在 Environment Variables 部分创建名称为 OS_ACTIVITY_MODE 和值为 disable 的变量,如下图所示。

此时,没有数据表明您需要对这种内部调试器状态的爆发做出响应。顺便说一句,这些消息在物理设备上开发时也会出现,而不仅仅是模拟器。

禁用 Xcode 环境变量 OS_ACTIVITY_MODE 的先前答案将停止所有此类内部系统消息,不幸的副作用是关闭 ObjC 中 NSLog() 调用的控制台日志记录。我没有检查过,但它也可能会禁用 Swift print() 日志记录。

Xcode 团队应该真正区分禁用系统日志记录和用户日志记录!

似乎 (刷新首选项...) 问题出现在多个平台上。

我设法在 High Sierra(10.13.1) XCode 9.1iOS 11.0.3 通过将 OS_ACTIVITY_MODE 定义为 禁用 通过进入 XCode 通过

Product > Scheme > Edit Scheme > Arguments > Environment Variables

add OS_ACTIVITY_MODE disable

注意:NSLog执行后可能无法正常工作

问题中报告了类似的问题:

如何修复 Xcode9 中的 refreshPreferences 消息[重复]