这次崩溃是什么意思(iOS)?

时间:2013-01-18 19:54:47

标签: ios crash-log

当我提交我的应用程序时,Apple抱怨崩溃(我的设备上没有发生)。 (该应用程序使用Cocos2d和Kamcord)。这是他们发给我的日志。有没有人知道发生了什么?

Incident Identifier: DF08231F-6870-4BA1-B676-FABB198B2C1D
CrashReporter Key:   aca1b4fd3ac58a223f67f43ce5c768e6e94616f0
Hardware Model:      xxx
Process:         Intro Maker [21098]
Path:            /var/mobile/Applications/58D16C18-20F2-4A98-ADA0-DDF7518F7704/Intro Maker.app/Intro Maker
Identifier:      Intro Maker
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2013-01-17 17:47:44.172 -0800
OS Version:      iOS 6.0.1 (10A523)
Report Version:  104

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x60000008
Crashed Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libobjc.A.dylib                 0x385b15b0 objc_msgSend + 16
1   Intro Maker                     0x000842b6 0x34000 + 328374
2   Intro Maker                     0x0006ec82 0x34000 + 240770
3   Intro Maker                     0x0006ef06 0x34000 + 241414
4   UIKit                           0x375f751e -[UIWindow _sendTouchesForEvent:] + 314
5   UIKit                           0x375e47fc -[UIApplication sendEvent:] + 376
6   UIKit                           0x375e4116 _UIApplicationHandleEvent + 6150
7   GraphicsServices                0x34d605a0 _PurpleEventCallback + 588
8   GraphicsServices                0x34d601ce PurpleEventCallback + 30
9   CoreFoundation                  0x318a9170 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
10  CoreFoundation                  0x318a9112 __CFRunLoopDoSource1 + 134
11  CoreFoundation                  0x318a7f94 __CFRunLoopRun + 1380
12  CoreFoundation                  0x3181aeb8 CFRunLoopRunSpecific + 352
13  CoreFoundation                  0x3181ad44 CFRunLoopRunInMode + 100
14  GraphicsServices                0x34d5f2e6 GSEventRunModal + 70
15  UIKit                           0x376382f4 UIApplicationMain + 1116
16  Intro Maker                     0x0008204e 0x34000 + 319566
17  Intro Maker                     0x0003685c 0x34000 + 10332

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib          0x307ee648 kevent64 + 24
1   libdispatch.dylib               0x3990a974 _dispatch_mgr_invoke + 792
2   libdispatch.dylib               0x3990a654 _dispatch_mgr_thread$VARIANT$mp + 32

Thread 2 name:  WebThread
Thread 2:
0   libsystem_kernel.dylib          0x307edeb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x307ee048 mach_msg + 36
2   CoreFoundation                  0x318a9040 __CFRunLoopServiceMachPort + 124
3   CoreFoundation                  0x318a7d9e __CFRunLoopRun + 878
4   CoreFoundation                  0x3181aeb8 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x3181ad44 CFRunLoopRunInMode + 100
6   WebCore                         0x32777a40 RunWebThread(void*) + 440
7   libsystem_c.dylib               0x3853730e _pthread_start + 306
8   libsystem_c.dylib               0x385371d4 thread_start + 4

Thread 0 crashed with ARM Thread State (32-bit):
    r0: 0x210addc0    r1: 0x0024f355      r2: 0x210afa60      r3: 0x00000000
    r4: 0x60000000    r5: 0x0024f355      r6: 0x210addc0      r7: 0x2fdcb688
    r8: 0x21072f40    r9: 0x00093cd5     r10: 0x42200000     r11: 0x0024cdc5
    ip: 0x385c21f1    sp: 0x2fdcb5d8      lr: 0x000842bb      pc: 0x385b15b0
  cpsr: 0x00000030

1 个答案:

答案 0 :(得分:4)

当您创建上传到Apple的.ipa文件时,您必须先创建一个应用程序存档(.xcarchive文件夹)。如果您的Mac上仍存在该文件夹(及其内容),并将崩溃报告拖到Xcode Organizer上,则Xcode 应该表示崩溃报告。这意味着第1,2,3,16和17帧中的每一个都将显示源代码中的函数,文件名和行号。这可以帮助您追踪问题。

SIGSEGVobjc_msgSend的最常见原因是通过悬空指针向释放的对象发送消息。

在您的应用上运行静态分析器可以帮助您追踪不正确的内存管理,如果您遵循Apple的内存管理命名约定。从菜单栏中选择产品>分析

启用僵尸运行您的应用也可以帮助您追踪问题。您可以使用Instruments在模拟器上执行此操作;它有一个Zombie预设。要在设备上执行此操作,您必须编辑方案,转到“诊断”选项卡,然后启用“启用僵尸对象”复选框。