在ios崩溃堆栈跟踪中右侧的数字是什么意思?

时间:2012-07-30 03:10:43

标签: ios

Application Receive SIGSEGV Signal

(
"0 libsystem_c.dylib _sigtramp + 38 ",
"1 PConlineBrowser PConlineBrowser + 426343 ",
"2 PConlineBrowser PConlineBrowser + 425831 ",
"3 PConlineBrowser PConlineBrowser + 426725 ",
"4 PConlineBrowser PConlineBrowser + 424051 ",
"5 Foundation __NSFireTimer + 144 ",
"6 CoreFoundation __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 14 ",
"7 CoreFoundation __CFRunLoopDoTimer + 364 ",
"8 CoreFoundation __CFRunLoopRun + 1206 ",
"9 CoreFoundation CFRunLoopRunSpecific + 300 ",
"10 CoreFoundation CFRunLoopRunInMode + 104 ",
"11 GraphicsServices GSEventRunModal + 136 ",
"12 UIKit UIApplicationMain + 1080 ",
"13 PConlineBrowser PConlineBrowser + 7771 ",
"14 PConlineBrowser PConlineBrowser + 5144 "
)
下面是关于我的应用程序的一堆回溯信息,右侧的数字打扰了我,他们真的有意思吗?

1 个答案:

答案 0 :(得分:3)

您可以在没有详细调试信息的堆栈帧中获取这些信息。由于调试器对这些库的唯一信息是入口点(函数的AKA开始),它只能给你函数的开头加上一个偏移量(实际上,它可以只给你原始地址,但是会完全没用的。)

如果你在调试器中查看框架,在汇编程序中,你可以看到机器代码中发生错误的位置,所以如果你喜欢调试汇编程序,这对你有用。

在实践中,它们几乎无用,除非您需要将它们发送给苹果,苹果确实有符号信息将这些信息转换为行号。

有时你会为自己的功能获得这些。这表明您没有可用的符号,因为它们已被剥离。如果从设备获得转储并在文本编辑器中查看它,它可能看起来像这样。答案是在组织者中打开转储,它将尝试找到匹配的存档并使用其中的符号文件将偏移转换为行号。