【问题标题】:When does applicationDidFinishLaunching run on IPhone simulator?applicationDidFinishLaunching 什么时候在 iPhone 模拟器上运行?
【发布时间】:2009-12-14 23:25:47
【问题描述】:
在一个 iPhone 应用程序中,我在 appDidFinishLaunching 中放置了一个断点,当我使用 command-Return 从编译器调用程序时,代码在我的断点处停止。
然后我关闭了程序,但没有关闭模拟器。然后当我从程序图标调用程序时,代码并没有在我的断点处停止。断点不在任何条件范围内。
关于这里发生了什么的任何想法?
谢谢,
约翰·多纳
【问题讨论】:
标签:
initialization
ios-simulator
【解决方案1】:
断点只有调试器知道,只有从 Xcode 启动程序才会调用调试器。 “运行和调试”会启动您的应用程序和 gdb(Xcode 使用的调试器)并将它们连接在一起。当调试器发现您已到达断点引用的执行点时,它会停止执行应用程序。应用程序本身不知道断点。
如果您直接从模拟器(或设备)启动应用,调试器不会运行,因此您的断点无效。它不是以任何方式编译的应用程序的一部分。
【解决方案2】:
有根据的猜测:当您从程序图标调用应用程序时,断点未激活。为了达到断点,您的应用程序必须从 Xcode 启动。