2011-09-19 46 views
3

当异常发生有堆栈跟踪这种:NSException callStackSymbols

2的CoreFoundation 0x013bd1cc - [__ NSArrayI objectAtIndex:] + 236
3 -O-° - ≠-I 0x0000ac76 - [ContentButton handleGesture:] + 326
4 UIKit的0x00de24f2 - [UIGestureRecognizer _updateGestureWithEvent:] + 730
...

我看到异常发生时,我试图让objectAtIndex:在NSArray中我的自定义类ContentButtonhandleGesture:方法。

但是这个数字后的消息是什么意思(如+ 236)?

在java堆栈跟踪,发生异常的平均行号(据我所知)。但在第47行发送的消息[__NSArrayI objectAtIndex:](不是236)。

非常感谢。

+0

236指的是由二进制的方法的开头以字节为单位的偏移量。 – VenoMKO

回答

1

WWDC 2010有一个关于理解崩溃报告的精彩视频。

You can find it here(登录到苹果开发需要)

+1

仍然不知道这个数字是什么意思。在视频中被告知,XCode象征着自己的任何崩溃报告,但不是 - 仍然得到类似于236的附加到消息名称,并且仍然不知道这是什么。 –

+0

@GusevAndrey我也很困惑。据我所知,这是从汇编code_中_方法声明开始的行号数目。除非您确切知道您的类的每一行如何转换为汇编,以及编译器如何关联变量,这并非非常有用。 –