2012-07-30 168 views
1
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 " 
) 

继承人的有关我的应用程序回溯信息一堆,右侧的数字打扰我,他们真的意味着什么?ios崩溃堆栈跟踪中右侧的数字是什么意思?

+0

是的,他们这样做,但不是给你。它们是二进制指令的地址偏移量,它们是从中调用的。的 – borrrden 2012-07-30 03:22:26

+1

可能重复【什么是旁边一个堆栈跟踪方法名是多少?(http://stackoverflow.com/questions/7861431/what-is-the-number-next-to-the-method-name -in-A-栈跟踪) – 2012-07-30 04:31:43

回答

3

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

如果你看一下在调试器框架中,汇编程序,你可以看到在机器代码发生错误,因此,如果您喜欢调试汇编程序,这将是对你有用的。

在实践中,他们是几乎无用的,除非你需要把他们关到苹果,谁做有象征性的信息,这些转换为行号。

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

相关问题