在我们的一款 iPhone 应用程序中,我们遇到了一些迄今为止无法重现的 Crashlytics 崩溃。然而,仔细观察,我注意到了一个趋势......
崩溃 1:-[UINavigationTransitionView _notifyDelegateTransitionDidStopWithContext:]
可用内存:10%
崩溃 2:-[UINavigationTransitionView _notifyDelegateTransitionDidStopWithContext:]
可用内存:8%
崩溃 3:HostBase::lock()
可用内存:8%
崩溃 4:-[UINavigationTransitionView _notifyDelegateTransitionDidStopWithContext:]
可用内存:22%
可用 RAM 的数量是否意味着什么?我们能否确定这些是实际的崩溃,而不是我们的应用程序由于内存不足而被操作系统杀死?如果应用程序在后台崩溃,Crashlytics 是否会发送崩溃报告?
添加了几个堆栈跟踪...
异常类型:SIGSEGV、导航崩溃
0 libobjc.A.dylib
objc_msgSend + 15
1 UIKit ✭
-[UINavigationTransitionView _notifyDelegateTransitionDidStopWithContext:] + 274
2 UIKit
-[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 158
3 UIKit
-[UIViewAnimationState animationDidStop:finished:] + 50
4 QuartzCore
CA::Layer::run_animation_callbacks(void*) + 208
5 libdispatch.dylib
_dispatch_client_callout + 22
6 libdispatch.dylib
_dispatch_main_queue_callback_4CF$VARIANT$mp + 224
7 CoreFoundation
__CFRunLoopRun + 1290
8 CoreFoundation
CFRunLoopRunSpecific + 356
9 CoreFoundation
CFRunLoopRunInMode + 104
10 GraphicsServices
GSEventRunModal + 74
11 UIKit
UIApplicationMain + 1120
异常类型:SIGSEGV、HostLock 崩溃
0 libobjc.A.dylib
objc_msgSend + 15
1 CFNetwork ✭
HostBase::lock() + 14
2 CFNetwork
DispatchHost::performInvocation(void const*) + 12
3 CFNetwork
__setupTCPConnection_block_invoke_2 + 290
4
...
libsystem_network.dylib
__tcp_connection_notify_complete_block_invoke_1 + 18
7 libsystem_c.dylib
_pthread_wqthread + 294