我正在尝试使用用户发送的崩溃日志进行调试。问题是我无法重现崩溃,这意味着我无法使用Xcode来调试NSZombieEnabled
或调试器的崩溃。
日志让我知道崩溃的原因是什么(过早发布了什么?),但我不知道它发生在哪里。
我已经尝试了atos
工具,但无论我输入的是什么(例如0x94e10ed7
),它只返回我输入的相同十六进制而没有其他内容(与Apple的教程不同:{{ 3}})
我怎样才能找出这个问题发生在哪里?
这是崩溃日志:
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x000000004d555478
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Application Specific Information:
objc_msgSend() selector name: respondsToSelector:
Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x94e10ed7 objc_msgSend + 23
1 com.apple.CoreFoundation 0x975ee5f2 _CFStringAppendFormatAndArgumentsAux + 3138
2 com.apple.CoreFoundation 0x975ed979 _CFStringCreateWithFormatAndArgumentsAux + 105
3 com.apple.Foundation 0x95b51d23 -[NSPlaceholderString initWithFormat:locale:arguments:] + 163
4 com.apple.Foundation 0x95b51bd6 +[NSString stringWithFormat:] + 88
5 com.myapp.test 0x0006f7c0 -[File5 firefoxCookies] + 539
6 com.myapp.test 0x0006f25b -[File5 numberOfCookies] + 34
7 ...yapp.test 0x00003754 0x1000 + 10068
8 com.apple.CoreFoundation 0x9762e9b4 -[NSSet makeObjectsPerformSelector:] + 196
9 com.apple.AppKit 0x9314521c -[NSIBObjectData nibInstantiateWithOwner:topLevelObjects:] + 1566
10 com.apple.AppKit 0x931431f4 loadNib + 257
11 com.apple.AppKit 0x931425ed +[NSBundle(NSNibLoading) _loadNibFile:nameTable:withZone:ownerBundle:] + 228
12 com.apple.AppKit 0x931424fe +[NSBundle(NSNibLoading) loadNibFile:externalNameTable:withZone:] + 158
13 com.apple.AppKit 0x93142449 +[NSBundle(NSNibLoading) loadNibNamed:owner:] + 383
14 com.apple.AppKit 0x9313f24d NSApplicationMain + 434
15 ...yapp.test 0x00002d48 0x1000 + 7496
16 ...yapp.test 0x00002cfe 0x1000 + 7422
答案 0 :(得分:3)
大部分日志已经过符号化。从类[NSString stringWithFormat:]
的{{1}}实例方法调用firefoxCookies
后发生崩溃。
答案 1 :(得分:0)
看到它来查看从源文件中调用的最后一个函数的简单方法,然后是“com.myapp.test”或者你的应用程序或公司名称。如果你已经喂它了< / p>