我不确定这次崩溃意味着什么。我的一个用户登录后发生了这种情况。这是我从crashlytics获得的报告。这份报告似乎很含糊。
Thread : Crashed: com.apple.main-thread
0 libobjc.A.dylib 0x00007fff8dae50e6 objc_release + 22
1 libobjc.A.dylib 0x00007fff8dae465a (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 502
2 CoreFoundation 0x00007fff8df459e2 _CFAutoreleasePoolPop + 50
3 CoreFoundation 0x00007fff8df7d7cc __CFRunLoopRun + 1644
4 CoreFoundation 0x00007fff8df7cf25 CFRunLoopRunSpecific + 309
5 HIToolbox 0x00007fff92333a0d RunCurrentEventLoopInMode + 226
6 HIToolbox 0x00007fff923337b7 ReceiveNextEventCommon + 479
7 HIToolbox 0x00007fff923335bc _BlockUntilNextEventMatchingListInModeWithFilter + 65
8 AppKit 0x00007fff9093726e _DPSNextEvent + 1434
9 AppKit 0x00007fff909368bb -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
10 AppKit 0x00007fff9092a9bc -[NSApplication run] + 553
11 AppKit 0x00007fff909157a3 NSApplicationMain + 940
12 libdyld.dylib 0x00007fff8ba235fd start + 1
最佳答案
崩溃日志表明您的内存管理有问题。您已经释放了一个对象,并且当自动释放池启动时,该对象显示为崩溃。如果您不熟悉这些概念,则需要read about autorelease pools in Apple's docs。如果您了解这些想法并在发现崩溃时需要帮助,那么我建议(1)为崩溃者找到可重现的案例,(2)打开NSZombie
(Google是您的 friend ),使用Xcode中的复选框很容易做到编辑方案面板,以及(3)中断适当的NSZombie
方法,以找出哪种类型的对象被过度释放,至少应该给您更多的信息。在您的代码上运行Xcode的静态分析器也可能有助于查找错误,而无需执行任何这些步骤(即,不需要可重复的情况)。
关于xcode - 用户登录后Mac OSX App崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33023278/