Swift 不使用 print() 命令打印到控制台,其他代码工作正常

Swift not printing to console with print() command, other code works fine

我正在使用 XCode Version 9.0 beta (9M136h) 编写带有 watchkit 扩展的应用程序。我可以让应用程序与手表应用程序通信,并使用 WatchConnectivity Framework 来回发送信息。我还有使用 AlamoFire 框架与服务器通信的应用程序。

我的所有函数都被调用和执行,但是,我似乎无法 print() 将任何内容记录到控制台!我曾尝试在应用程序的不同区域放置各种 print() 命令,但其中 none 正在向控制台生成任何内容,即使它们周围的代码正在运行。

我 100% 确定我正在查看 XCode 的正确区域,我已经前往 View->Debug Area->Activate Console 并且我还确保选择了 All output。我什至尝试添加 OS_ACTIVITY_MODE 其值为 disabled 但这似乎也没有做任何事情。

这是我如何在我的 ViewController.swift 文件中使用它的示例:

override func viewDidLoad()
{
    super.viewDidLoad()
    print("view did load")
    initWCSession()
    print("Attorney General Jeff Sessions")
}

此代码运行并调用 initWCSession() 函数,但我从未在任何地方看到 "view did load""Attorney General Jeff Sessions" 的任何输出!

这是 XCode 中的错误吗?有什么我忘记了吗? (我是 XCode 的新手)。

尝试 view.backgroundColor = .red

我认为未调用视图控制器。只是一个猜测。否则打印应该工作。

我不确定为什么会这样,但我进入 Edit Scheme 并选中了用于记录 malloc 的复选框。我保存了这些设置,然后返回 Edit Scheme 并取消选中复选框并保存。

之后,我开始看到 print() 语句记录到控制台!

一定是这个版本的错误 XCode。

在最近的 Xcode 11.3.1 中,我从 CocoaLumberjack 获取了日志行,但没有从我的 print 调用中获取任何信息。重新启动 Xcode 解决了问题。