我正在使用 Firebase Crashlytics 从我的 iOS 应用程序中获取崩溃报告,并且我收到了一些我不理解的崩溃,并带有
当我查看堆栈跟踪时,我也会得到一或几行编译器生成的错误消息。
我一直在搜索,但找不到发生这种崩溃的原因。在此特定示例中,这里是发生崩溃的函数(它没有说明哪一行)。据我所知,我只能猜测这与我在另一个数组上使用数组中的索引有关,因此它可能超出范围......但我真的不知道。
这使得修复崩溃变得非常困难,因为我只能假设我的代码中可能有什么问题。另外,如果问题实际上是超出索引的范围,它不应该报告发生崩溃的行吗?我真的很想了解编译器生成的东西,而不是解决这个实际的崩溃:)
最佳答案
编译器生成的意思是代码由 swift 编译器注入(inject)到最终的二进制文件中。这可能是展开的内联类型库函数、优化等。屏幕截图上的崩溃日志只显示了失败执行堆栈的顶部调用,并且在大多数情况下,它不是您的代码行(虽然有原因) 但一些标准函数调用(来自库或自动生成)。因此,您不仅要调查第一行,还要调查崩溃堆栈的完整回溯。
backup
关于ios - Crashlytics:编译器生成的含义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64353263/