QuartzCore - iOS8 崩溃

Posted

技术标签:

【中文标题】QuartzCore - iOS8 崩溃【英文标题】:QuartzCore - Crash in iOS8 【发布时间】:2015-02-20 06:06:58 【问题描述】:

发布我的 ios 应用程序的新版本后,我经常遇到以下崩溃。

崩溃:WebThread EXC_BAD_ACCESS KERN_INVALID_ADDRESS 在 0x80000012

这是令人讨厌的崩溃之一,其中堆栈跟踪没有提供任何与其崩溃的位置或导致崩溃的原因相关的线索。一件主要的事情是这种崩溃只存在于 iOS8 中。请在堆栈跟踪下方找到:

0 libobjc.A.dylib        objc_msgSend + 5 release
1 CoreFoundation         CFRelease + 600
2 QuartzCore             CA::release_objects(X::List<void const*>*) + 16
3 QuartzCore             -[CAAnimation dealloc] + 54
4 libobjc.A.dylib        objc_object::sidetable_release(bool) + 166
5 libobjc.A.dylib        (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 404
6 CoreFoundation         _CFAutoreleasePoolPop + 16
7 Foundation             -[NSAutoreleasePool drain] + 122
8 CFNetwork              AutoAutoreleasePool::~AutoAutoreleasePool() + 24
9 CFNetwork              ___ZN27URLConnectionClient_Classic18_withDelegateAsyncEPKcU13block_pointerFvP16_CFURLConnectionPK33CFURLConnectionClientCurrent_VMaxE_block_invoke_2 + 166
10 CFNetwork             RunloopBlockContext::_invoke_block(void const*, void*) + 60
11 CoreFoundation        CFArrayApplyFunction + 36
12 CFNetwork             RunloopBlockContext::perform() + 182
13 CFNetwork             MultiplexerSource::perform() + 216
14 CFNetwork             MultiplexerSource::_perform(void*) + 48

任何提示将不胜感激。提前致谢。

【问题讨论】:

这看起来很像UIWebView random crash at [UIViewAnimationState release]: message sent to deallocated instance 【参考方案1】:

大多数时候,EXC_BAD_ACCESS 是通过向已释放的对象发送消息而产生的。虽然这比以前在 ARC 下更难做到,但它仍然是可能的。

KERN_INVALID_ADDRESS 部分只是告诉您,您尝试访问的内存不是应用程序内存空间的一部分,这为已释放对象句柄假设提供了依据。

要调试以前发布的对象(称为“Zombie”对象),请在调试器中打开 NSZombies。在 XCode 7 中...

CMD-SHIFT- 调出管理方案。 选择您的方案 选择Diagnostics 检查Enable Zombie Objects

注意:您只想在调试版本中执行此操作,因为僵尸对象会占用大量内存并损害整体性能。尽管如此,它仍然是一款出色的调试工具。

【讨论】:

以上是关于QuartzCore - iOS8 崩溃的主要内容,如果未能解决你的问题,请参考以下文章

ios8 UIImage imageNamed:崩溃

iOS8.1中文手写输入法崩溃

与 ios8、popToViewController 和 UIViewControllerHierarchyInconsistency 崩溃

ios8 safari 独立网络应用程序在单击选择时崩溃

仅由于内存错误,iOS8 上的应用程序崩溃

MagicalRecord 在 ios8 上崩溃