No information from this crash report:
I was beta-testing my iPhone App (not through xcode), and the app crashed. I plugged it into itunes to read the crash log, but it provides NO INFORMATION at all.
How can I make sense of this?
Incident Identifier: 564EAC45-325E-4D9C-9541-F6B5FB1BFBC1
CrashReporter Key: 0c1bab58dbdb74d55434c5b4426f3a6b519bc608
Hardware Model: iPad2,1
Process: APPNAME [1230]
Path: /var/mobile/Applications/9B2D2DD4-4F3A-48CC-8211-F408AD23B64D/APPNAME.app/APPNAME
Identifier: APPNAME
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2011-04-20 00:33:23.541 +0100
OS Version: iPhone OS 4.3.1 (8G4)
Report Version: 104
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x9003ce77
Crashed Thread: 0
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x31d2dc98 0x31d2b000 + 11416
1 APPNAME 0x0004d8ea 0x1000 + 313578
2 Foundation 0x348c47c6 0x34834000 + 591814
3 CoreFoundation 0x334baa40 0x33445000 + 481856
4 CoreFoundation 0x334bcec4 0x33445000 + 491204
5 CoreFoundation 0x334bd83e 0x33445000 + 493630
6 CoreFoundation 0x3344debc 0x33445000 + 36540
7 CoreFoundation 0x3344ddc4 0x33445000 + 36292
8 GraphicsServices 0x33727418 0x33723000 + 17432
9 GraphicsServices 0x337274c4 0x33723000 + 17604
10 UIKit 0x343b0d62 0x34382000 + 191842
11 UIKit 0x343ae800 0x34382000 + 182272
12 APPNAME 0x00002a3e 0x1000 + 6718
13 APPNAME 0x000029d4 0x1000 + 6612
Thread 1 name: Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0 libsystem_kernel.dylib 0x326d1fbc 0x326bf000 + 77756
1 libdispatch.dylib 0x3074afb6 0x3074a000 + 4022
2 libdispatch.dylib 0x3074bfbe 0x3074a000 + 8126
3 libdispatch.dylib 0x3074b57e 0x3074a000 + 5502
4 libsystem_c.dylib 0x309b058a 0x3097c000 + 214410
5 libsystem_c.dylib 0x309b0bbc 0x3097c000 + 215996
Thread 2 name: WebThread
Thread 2:
0 libsystem_kernel.dylib 0x326cec00 0x326bf000 + 64512
1 libsystem_kernel.dylib 0x3开发者_JS百科26ce758 0x326bf000 + 63320
2 CoreFoundation 0x334bb2b8 0x33445000 + 484024
3 CoreFoundation 0x334bd562 0x33445000 + 492898
4 CoreFoundation 0x3344debc 0x33445000 + 36540
5 CoreFoundation 0x3344ddc4 0x33445000 + 36292
6 WebCore 0x316a3292 0x3169d000 + 25234
7 libsystem_c.dylib 0x309af30a 0x3097c000 + 209674
8 libsystem_c.dylib 0x309b0bb4 0x3097c000 + 215988
Thread 3:
0 libsystem_kernel.dylib 0x326cec00 0x326bf000 + 64512
1 libsystem_kernel.dylib 0x326ce758 0x326bf000 + 63320
2 CoreFoundation 0x334bb2b8 0x33445000 + 484024
3 CoreFoundation 0x334bd562 0x33445000 + 492898
4 CoreFoundation 0x3344debc 0x33445000 + 36540
5 CoreFoundation 0x3344ddc4 0x33445000 + 36292
6 Foundation 0x3485e7f6 0x34834000 + 174070
7 Foundation 0x34851382 0x34834000 + 119682
8 Foundation 0x348c35c6 0x34834000 + 587206
9 libsystem_c.dylib 0x309af30a 0x3097c000 + 209674
10 libsystem_c.dylib 0x309b0bb4 0x3097c000 + 215988
Thread 4 name: com.apple.CFSocket.private
Thread 4:
0 libsystem_kernel.dylib 0x326d0c60 0x326bf000 + 72800
1 CoreFoundation 0x334c08f2 0x33445000 + 506098
2 libsystem_c.dylib 0x309af30a 0x3097c000 + 209674
3 libsystem_c.dylib 0x309b0bb4 0x3097c000 + 215988
Thread 5:
0 libsystem_kernel.dylib 0x326d13ec 0x326bf000 + 74732
1 libsystem_c.dylib 0x309b06d8 0x3097c000 + 214744
2 libsystem_c.dylib 0x309b0bbc 0x3097c000 + 215996
Thread 0 crashed with ARM Thread State:
r0: 0x003e7dc0 r1: 0x30d7a116 r2: 0x001c4be0 r3: 0x00000090
r4: 0x9003ce6f r5: 0x003de030 r6: 0x30d7a116 r7: 0x2fdfea74
r8: 0x0016d680 r9: 0x2fdfea20 r10: 0x003cfcb0 r11: 0x00000000
ip: 0x0004d8cd sp: 0x2fdfea28 lr: 0x0004d8f1 pc: 0x31d2dc98
cpsr: 0x200f0030
Well the error seems to be this
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x9003ce77
Crashed Thread: 0
This means in 80% of cases that you tried to send a message to an object that you already released. Good luck
What you're looking for is to "symbolicate" the crash log, which makes those hex addresses match up with the source code. WHen you do a build, there is a .dSYM file also created which does this mapping. Any time you release a build to the outside world, always keep the dSYM file somewhere associated with the binary so you can symbolicate the logs.
Try here for instructions on symbolication.
精彩评论