当我尝试通过设置一些断点并使用Step in
命令来找出导致应用程序崩溃的代码行时,我经常遇到一些线程指令(我不知道该如何调用)。我只能在其中看到数字和字母的组合,并希望将所有这些都跳过到下一行代码。如果我使用Continue program execution
,则应用程序崩溃,因此我不确定导致崩溃的行。
我不能手动遍历每个线程指令,因为确实有很多。我尝试使用其他一些命令,例如“调试”菜单中的Step over instruction
和Step over thread
,但显然,这仅指示Xcode跳过当前线程指令并转到下一个,这给了我与Step in
命令相同的结果。
我看过有关调试的教程,但没有一个提到在这种情况下该怎么做。我在搜索该主题时也遇到了麻烦,因为我什至不知道如何称呼它。
很抱歉,我对我想知道的内容的解释确实很糟糕,但是我真的不知道该怎么形容。如果您了解我的意思,请告诉我这是什么,如何跳过或了解它在做什么。
最佳答案
在大多数情况下,您可能希望使用“逐步”来一次遍历您自己的代码。此操作将带您到当前方法中的下一行代码,或者如果在该方法的末尾,则将您带至调用当前方法的位置。
使用“单步执行”以转到将要执行的下一行,这可能涉及方法实现细节,该细节可以是您的代码,库代码,框架代码或系统代码。如果您得到不需要的代码,请使用“单步执行”,直到返回调试所需的代码。
话虽如此……当您遇到崩溃时,Xcode应该已经在日志输出中为您提供了一个堆栈跟踪,该堆栈跟踪指出了崩溃发生的确切位置。
旁注:添加日志语句可能会有所帮助。而且,使用像Crashlytics这样的崩溃分析库也可能非常有帮助。
关于ios - 跳过Xcode调试器中的线程指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39193179/