Swift 中的 Xcode 调试/崩溃报告是不是损坏?

Posted

技术标签:

【中文标题】Swift 中的 Xcode 调试/崩溃报告是不是损坏?【英文标题】:Is Xcode debugging/crash report in Swift broken?Swift 中的 Xcode 调试/崩溃报告是否损坏? 【发布时间】:2015-11-25 17:16:16 【问题描述】:

我已经使用 Swift 一年多了,而且随着每个 Xcode 新版本的发布,情况似乎只会变得更糟。

只有在应用程序中的崩溃没有正确报告吗?大多数时候,main() 上只有 SIGBRTEXC_BAD_INSTRUCTION(是的,我在我的项目中使用了 main.m):

这没有帮助。如果我不添加“所有异常”断点,我将找不到崩溃发生的位置。我刚刚习惯了 LLVM 对我的 Swift 代码上的任何错误都没有任何帮助,即便如此:

这里有什么我遗漏的吗?我感觉回到我用 Objective-C 编程的时候,情况好多了。

更新

我找到了这个解决方案:https://***.com/a/27356008/447360

这有时会有所帮助:

仍在研究如何让异常/错误消息(再次)显示在 Xcode 中。

【问题讨论】:

【参考方案1】:

好的,所以我终于能够改进断点的调试信息了。

基本上你应该像这样创建一个“所有异常”断点:

这仅适用于 Xcode 7+。

学分:

http://natashatherobot.com/xcode-debugging-trick/

https://***.com/a/31471663/447360

https://***.com/a/4535007/447360

【讨论】:

【参考方案2】:

检查“Debug -> Debug Workflow -> Always Show Disassembly”是否关闭。

【讨论】:

虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review 其实我上传了一张图片,这说明了我上面所说的,但由于我目前的低代表,我只能将它作为链接发布。 :) 编辑器中有上传图片选项(Ctrl+G),请检查一下,我认为它不受代表的限制。 ,请勾选一次,以后对你有用。 不是我想要的。启用此选项后,Xcode 现在会显示发生异常/错误的汇编代码 - 但这无助于查找实际问题。我仍然得到“信号 SIGABRT”,没有太多解释,只是这次在汇编代码中。 如我所说,检查该选项是否关闭。但这似乎并没有导致您遇到的问题。

以上是关于Swift 中的 Xcode 调试/崩溃报告是不是损坏?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Swift 不工作的 pod 解析崩溃报告导入

将代码更新到 xcode 9 和 swift 4 后应用程序崩溃

问题 XCode 8,Swift 2.3 存档版本在 IOS 9.2.1 -> IOS 9.0 上启动时崩溃

Swift WHOLE_MODULE_OPTIMIZATION 提高了编译时间,但会导致 lldb/Xcode 崩溃

如何从连接到 Xcode 的设备中理解 ios 崩溃报告?

如何获取 iPhone 应用程序的崩溃报告