ios - NSLog 输出无处可寻,Xcode 8

标签 ios objective-c xcode8

我正在尝试使用 NSLog 语句来确定我的应用程序的执行流程,所以我在 autoreleasepool 之后的 main.m 中有一个:

@autoreleasepool {
    NSLog(@"app started"); //added breakpoint here, but debugger stopped at next line
    BOOL runningTests = NSClassFromString(@"XCTestCase") != nil; //stopped here instead of nslog.
    ...

现在,该声明无处可寻。我试过搜索控制台,使用“command +/”为模拟器调出一个控制台,并在 system.log 中搜索,但仍然一无所获。为了查看我是否正在通过 main 我在日志语句上添加了一个断点并且它被命中,或者至少调试器在日志之后的语句上停止了(如代码片段所示)。关于应用程序的生命周期,有什么我不了解的地方吗,例如,当应用程序启动时,日志是否会在某个时候被清除?我在我希望调用的其他函数中也有其他 NSLog 语句,但它们也没有打印出来。为什么我的日志没有打印到控制台?

旁注:

我的控制台确实处于事件状态,我正在查看的输出是“所有输出”。

还有其他方法可以确定我的应用程序的执行流程吗?这是一个非常大的应用程序,有很多 Storyboard和 View Controller 。我所说的执行流程是指首先点击哪些 View 、从这些 View 调用哪些函数、应用程序如何在应用程序加载时确定下一个 View (取决于用户是否已登录)等...

提前致谢!

编辑: 我有预处理器宏 enter image description here

最佳答案

NSlog 已执行但隐藏在许多其他控制台调试输出中以解决此问题:

In Xcode8: 

Product -> Scheme -> Edit Scheme -> Run -> Arguments -> Environment Variables

添加 OS_ACTIVITY_MODE 并检查它,但不要添加任何值。

关于ios - NSLog 输出无处可寻,Xcode 8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40005020/

相关文章:

ios - 如何将 AnyObject 向下转换为 pid_t

ios - textField shouldChangeCharactersInRange 正在执行用户操作后一步

xcode - 尝试构建基于简单 UITabBarController 的 iOS 应用程序时出现运行时错误

objective-c - 捏 UIScrollView 时发生奇怪的崩溃

ios - UIBarButtonItem backButtonBackgroundImage : gets stretched

objective-c - 左侧标注图像未显示在 MKMapView 注释 View 中

Xcode 8 Playground 不显示 NSView

ios - 我怎么知道我制作的 iOS 应用程序是不是 32 位的?我该如何改变呢?

ios - 使用自动布局更改 UImageView 大小

ios - xcode中 "undefined symbols for architecture x86_64"和 "linker command failed with exit code 1"如何解决?