My app crashed in the thread named com.apple.CFURLCACHE_work_queue and the crash logs doesn't seem to provide any clues for me to find a bug or mistake =(
Thread 10 name: Dispatch queue: com.apple.CFURLCACHE_work_queue
Thread 10 Crashed:
0 libsystem_kernel.dylib 0x32e93350 __pthread_kill + 8
1 libsystem_c.dylib 0x3b04011e pthread_kill + 54
2 libsystem_c.dylib 0x3b07c96e abort + 90
3 libc++abi.dylib 0x343ebd4a abort_message + 70
4 libc++abi.dylib 0x343e8ff4 default_terminate() + 20
5 libobjc.A.dylib 0x3559fa74 _objc_terminate() + 144
6 libc++abi.dylib 0x343e9078 safe_handler_caller(void (*)()) + 76
7 libc++abi.dylib 0x343e9110 std::terminate() + 16
8 libc++abi.dylib 0x343ea50e __cxa_throw + 118
9 libobjc.A.dylib 0x3559f9ba objc_exception_throw + 90
10 Foundation 0x34d42b60 _NSOutOfMemoryErrorHandler + 56
11 CoreFoundation 0x3725130a __CFDataHandleOutOfMemory + 90
12 CoreFoundation 0x37251458 __CFDataGrow + 288
13 CoreFoundation 0x371d6134 CFDataReplaceBytes + 360
14 CoreFoundation 0x371e3a9a CFDataAppendBytes + 82
15 CFNetwork 0x33150438 CopyAllDataFromDataArray(__CFArray const*) + 104
16 CFNetwork 0x331509ae __CFURLCache::ExecuteSQLInsert(_CFCachedURLResponse const*, __CFString const*, _CFURLRequest const*) + 370
17 CFNetwork 0x3314ec62 __CFURLCache::AddCachedResponseForRequest(__CFURLCacheNode*, _CFCachedURLResponse const*, _CFURLRequest const*) + 58
18 CFNetwork 0x3314eab8 __CFURLCache::ProcessCacheTasks0(bool) + 140
19 CFNetwork 0x3314ea1c __CFURLCache::ProcessCacheTasks(bool) + 32
20 CFNetwork 0x3314e8f0 __CFURLCache::_CFURLCacheTimerCallback0() + 280
21 CFNetwork 0x3314e7c8 __CFURLCache::_CFURLCacheTimerCallback(void*) + 28
22 libdispatch.dylib 0x35f86134 _dispatch_source_invoke$VARIANT$mp + 248
23 libdispatch.dylib 0x35f83e8e _dispatch_queue_drain$VARIANT$mp + 78
24 libdispatch.dylib 0x35f83dbc _dispatch_queue_invoke$VARIANT$mp + 36
25 libdispatch.dylib 0x35f8491a _dispatch_root_queue_drain + 182
26 libdispatch.dylib 0x35f84abc _dispatch_worker_thread2 + 80
27 libsystem_c.dylib 0x3b017a0e _pthread_wqthread + 358
28 libsystem_c.dylib 0x3b0178a0 start_wqthread + 4
any idea or clue of why this happens?
I guess it has something to do with NSURLCache, but I don't manipulate or even create that object in my app.
I'm using Xcode 4.5 GM - I know it's not publicly released yet - and AFNetworking 1.0RC3 for network communication and downloading image data
From the look of things in numbers 10 and 11, it ran out of memory and threw an exception, maybe as part of some kind of assertion.
You will probably find exception information in the console log for the device. If you can connect your device to your Mac, you can access this data in Xcode. Devices don't keep much console data, so it is best to get the log very soon after encountering the error.
Related
I just received this crash report for my app from Flurry Analytics. But I don't know how to read this. It seems like there's no enough information to really tell what or where is this crash.
Could any of you guys help understand this report?
Thanks!
REPORT:
0 libsystem_kernel.dylib 0x19b7971e0 ___pthread_kill + 8
1 libsystem_c.dylib 0x19b706c00 _abort + 140
2 libc++abi.dylib 0x19a4bd3f4 ___cxa_bad_cast + 0
3 libc++abi.dylib 0x19a4d9e98 + 0
4 libobjc.A.dylib 0x19ae34264 + 124
5 libc++abi.dylib 0x19a4d6f44 + 16
6 libc++abi.dylib 0x19a4d6b10 ___cxa_rethrow + 144
7 libobjc.A.dylib 0x19ae3413c _objc_exception_rethrow + 44
8 CoreFoundation 0x1862a9328 _CFRunLoopRunSpecific + 552
9 GraphicsServices 0x1914200cc _GSEventRunModal + 180
10 UIKit 0x18ba96df8 _UIApplicationMain + 204
11 MYAPP 0x1000ffe24 main + 96 (main.m:21)
12 libdyld.dylib 0x19b6768b8 + 4
Getting a lot of crash reports with this stack trace... unable to fix it.
Had suspicion that it has something to do with me manipulating cookies in the shared instance of NSHTTPCookieStorage, so i have added code to do it on the same thread, but I'm still expiring this.
Any thoughts or ideas will be much appreciated.
Thread 4 Crashed:
0 CoreFoundation 0x23363dc4 CFURLCopyAbsoluteURL + 60
1 CFNetwork 0x22e87039 HTTPCookieStorage::copyCookiesForURL(__CFURL const*, unsigned char) + 74
2 CFNetwork 0x22f65ed1 -[NSHTTPCookieStorage cookiesForURL:] + 90
3 CFNetwork 0x22eef4e1 -[__NSURLBackgroundSession requestWithCookiesApplied:] + 218
4 CFNetwork 0x22ef0505 -[__NSURLBackgroundSession _onqueue_uploadTaskForRequest:uploadFile:bodyData:completion:] + 126
5 CFNetwork 0x22ef03e5 __80-[__NSURLBackgroundSession uploadTaskForRequest:uploadFile:bodyData:completion:]_block_invoke + 38
6 CFNetwork 0x22eefadf __68-[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:]_block_invoke + 84
7 libdispatch.dylib 0x31577c6f _dispatch_client_callout + 20
8 libdispatch.dylib 0x31581559 _dispatch_barrier_sync_f_invoke + 46
9 CFNetwork 0x22eefa0f -[__NSURLBackgroundSession performBlockOnQueueAndRethrowExceptions:] + 208
10 CFNetwork 0x22ef0365 -[__NSURLBackgroundSession uploadTaskForRequest:uploadFile:bodyData:completion:] + 218
11 CFNetwork 0x22f497b7 -[NSURLSession uploadTaskWithRequest:fromFile:] + 32
12 Pogoplug 0x001a3ca5 __46-[CENetworkManager uploadRequest:finishBlock:]_block_invoke (CENetworkManager.m:377)
13 Foundation 0x2414abfd __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__ + 6
14 Foundation 0x240b5ac5 -[NSBlockOperation main] + 146
15 Foundation 0x240a8505 -[__NSOperationInternal _start:] + 766
16 Foundation 0x2414d557 __NSOQSchedule_f + 184
17 libdispatch.dylib 0x315824d3 _dispatch_queue_drain$VARIANT$mp + 1460
18 libdispatch.dylib 0x31581da1 _dispatch_queue_invoke$VARIANT$mp + 82
19 libdispatch.dylib 0x31584491 _dispatch_root_queue_drain + 386
20 libdispatch.dylib 0x315858a3 _dispatch_worker_thread3 + 104
21 libsystem_pthread.dylib 0x316f8da9 _pthread_wqthread + 666
22 libsystem_pthread.dylib 0x316f8afc start_wqthread + 6
Finally found the cause after I managed to reproduce this issue while debugging, and its so silly on my part - its happening when url == nil for upload request.
Not sure why Apple allow to create NSURLMutableRequest with url == nil though, and not throwing exception in [NSMutableURLRequest requestWithURL:] method.
I would suggest check once with Instruments Tool, you will have a clear picture why and where exactly it is crashing.
I installed Crashlytics on my iOS Today Extension, and I am getting this strange crash. Does anyone know why this might be happening?
Fatal Exception: NSInternalInconsistencyException
removing inactive plug-in com.somecompany.someapp.TodayExtension(1.0)>
The line that it is crashing on is
11 PlugInKit -[PKService unregisterPersonality:] + 188
In my today extension, in viewDidLoad, it will get the user's current location, and then make a network request to fetch data about that location. Is this happening because my operation is taking too long and iOS is killing my extension? I haven't been able to reproduce this, but I think what user's see is a blank space where the extension should be or it doesn't show anything but the title of the extension.
Thread : Fatal Exception: NSInternalInconsistencyException
0 CoreFoundation 0x0000000181cc2530 __exceptionPreprocess + 132
1 libobjc.A.dylib 0x0000000192c980e4 objc_exception_throw + 60
2 CoreFoundation 0x0000000181cc23f0 +[NSException raise:format:]
3 Foundation 0x0000000182b6dc34 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 112
4 PlugInKit 0x000000018d1c04a0 __35-[PKService unregisterPersonality:]_block_invoke + 488
5 libdispatch.dylib 0x00000001932e9954 _dispatch_client_callout + 16
6 libdispatch.dylib 0x00000001932f31e4 _dispatch_barrier_sync_f_invoke + 76
7 PlugInKit 0x000000018d1c024c -[PKService unregisterPersonality:] + 188
8 PlugInKit 0x000000018d1bdfec -[PKServicePersonality shutdownPlugIn] + 108
9 CoreFoundation 0x0000000181cc8350 __invoking___ + 144
10 CoreFoundation 0x0000000181bc621c -[NSInvocation invoke] + 296
11 Foundation 0x0000000182c9d33c __NSXPCCONNECTION_IS_CALLING_OUT_TO_EXPORTED_OBJECT__ + 24
12 Foundation 0x0000000182b4b8c8 -[NSXPCConnection _decodeAndInvokeMessageWithData:] + 1604
13 Foundation 0x0000000182accbd4 message_handler + 708
14 libxpc.dylib 0x00000001934f0c78 _xpc_connection_call_event_handler + 68
15 libxpc.dylib 0x00000001934eeb7c _xpc_connection_mach_event + 2160
16 libdispatch.dylib 0x00000001932e9a28 _dispatch_client_callout4 + 16
17 libdispatch.dylib 0x00000001932ed140 _dispatch_mach_msg_invoke + 492
18 libdispatch.dylib 0x00000001932f42d4 _dispatch_queue_drain + 2008
19 libdispatch.dylib 0x00000001932ec668 _dispatch_mach_invoke + 136
20 libdispatch.dylib 0x00000001932f42d4 _dispatch_queue_drain + 2008
21 libdispatch.dylib 0x00000001932eca5c _dispatch_queue_invoke + 132
22 libdispatch.dylib 0x00000001932f6318 _dispatch_root_queue_drain + 720
23 libdispatch.dylib 0x00000001932f7c4c _dispatch_worker_thread3 + 108
24 libsystem_pthread.dylib 0x00000001934c922c _pthread_wqthread + 816
25 libsystem_pthread.dylib 0x00000001934c8ef0 start_wqthread + 4
Thread : Crashed: service sync
0 libsystem_kernel.dylib 0x000000019342f270 __pthread_kill + 8
1 libsystem_pthread.dylib 0x00000001934cd170 pthread_kill + 112
2 libsystem_c.dylib 0x00000001933a6b18 abort + 112
3 libc++abi.dylib 0x0000000192465418 __cxa_bad_cast
4 libc++abi.dylib 0x0000000192484b8c default_unexpected_handler()
5 libobjc.A.dylib 0x0000000192c983c0 _objc_terminate() + 128
6 libc++abi.dylib 0x0000000192481bb4 std::__terminate(void (*)()) + 16
7 libc++abi.dylib 0x0000000192481c24 std::terminate() + 64
8 libobjc.A.dylib 0x0000000192c98318 _destroyAltHandlerList
9 libdispatch.dylib 0x00000001932e9968 _dispatch_client_callout + 36
10 libdispatch.dylib 0x00000001932f31e4 _dispatch_barrier_sync_f_invoke + 76
11 PlugInKit 0x000000018d1c024c -[PKService unregisterPersonality:] + 188
12 PlugInKit 0x000000018d1bdfec -[PKServicePersonality shutdownPlugIn] + 108
13 CoreFoundation 0x0000000181cc8350 __invoking___ + 144
14 CoreFoundation 0x0000000181bc621c -[NSInvocation invoke] + 296
15 Foundation 0x0000000182c9d33c __NSXPCCONNECTION_IS_CALLING_OUT_TO_EXPORTED_OBJECT__ + 24
16 Foundation 0x0000000182b4b8c8 -[NSXPCConnection _decodeAndInvokeMessageWithData:] + 1604
17 Foundation 0x0000000182accbd4 message_handler + 708
18 libxpc.dylib 0x00000001934f0c78 _xpc_connection_call_event_handler + 68
19 libxpc.dylib 0x00000001934eeb7c _xpc_connection_mach_event + 2160
20 libdispatch.dylib 0x00000001932e9a28 _dispatch_client_callout4 + 16
21 libdispatch.dylib 0x00000001932ed140 _dispatch_mach_msg_invoke + 492
22 libdispatch.dylib 0x00000001932f42d4 _dispatch_queue_drain + 2008
23 libdispatch.dylib 0x00000001932ec668 _dispatch_mach_invoke + 136
24 libdispatch.dylib 0x00000001932f42d4 _dispatch_queue_drain + 2008
25 libdispatch.dylib 0x00000001932eca5c _dispatch_queue_invoke + 132
26 libdispatch.dylib 0x00000001932f6318 _dispatch_root_queue_drain + 720
27 libdispatch.dylib 0x00000001932f7c4c _dispatch_worker_thread3 + 108
28 libsystem_pthread.dylib 0x00000001934c922c _pthread_wqthread + 816
My main thread (did not crash here though):
Thread : com.apple.main-thread
0 TodayExtension 0x00000001000ae370 -[TodayViewController normalView] (TodayViewController.m:32)
1 TodayExtension 0x00000001000adf58 __36-[TodayViewController showErrorView]_block_invoke (TodayViewController.m:173)
2 libdispatch.dylib 0x00000001932e9994 _dispatch_call_block_and_release + 24
3 libdispatch.dylib 0x00000001932e9954 _dispatch_client_callout + 16
4 libdispatch.dylib 0x00000001932ee20c _dispatch_main_queue_callback_4CF + 1608
5 CoreFoundation 0x0000000181c7a2ec __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
6 CoreFoundation 0x0000000181c78394 __CFRunLoopRun + 1492
7 CoreFoundation 0x0000000181ba51f4 CFRunLoopRunSpecific + 396
8 GraphicsServices 0x000000018afc76fc GSEventRunModal + 168
9 UIKit 0x000000018653610c UIApplicationMain + 1488
10 libxpc.dylib 0x00000001934fc250 _xpc_objc_main + 768
11 libxpc.dylib 0x00000001934fdf38 xpc_main + 200
12 Foundation 0x0000000182ca1818 service_connection_handler
13 PlugInKit 0x000000018d1be910 -[PKService run] + 600
14 PlugInKit 0x000000018d1be548 +[PKService main] + 64
15 PlugInKit 0x000000018d1be938 +[PKService _defaultRun:arguments:] + 24
16 libextension.dylib 0x00000001924f9960 NSExtensionMain + 68
17 libdyld.dylib 0x0000000193316a08 start + 4
I see exactly the same thing on Crashlytics.
According to Apple this crash is a known bug in iOS 8 (including the 8.3 beta). The crash only occurs when the extension is shutting down, which means that the user doesn't see the extension crash.
So the only thing we can do right now is ignoring this crash
With the release of iOS 8 we've started getting several types of crashes that we've never seen before. Wondering if anyone else has seen this or has any suggestions.
Several of them look similar to this:
Thread : Crashed: com.apple.NSURLSession-work
0 libsystem_kernel.dylib 0x2fd3adfc __pthread_kill + 8
1 libsystem_pthread.dylib 0x2fdb8d37 pthread_kill + 62
2 libsystem_c.dylib 0x2fcda909 abort + 76
3 libsystem_malloc.dylib 0x2fd6b3af szone_error + 334
4 libsystem_malloc.dylib 0x2fd6b637 free_small_botch + 66
5 CFNetwork 0x21a63935 HTTPMessage::ensureParserFinished() + 72
6 CFNetwork 0x21a7aad3 HTTPMessage::copyHeaderFieldValue(__CFString const*) + 18
7 CFNetwork 0x21b43e87 HTTPSniffing::checkRequestAndUpdateResponseForSniffingPurposes(_CFURLRequest const*, _CFURLResponse*) + 130
8 CFNetwork 0x21b15ddd URLConnectionClient::_loaderClientEvent_DidReceiveResponse(_CFURLResponse*) + 340
9 CFNetwork 0x21b1b7d9 ___ZN19URLConnectionLoader26protocolDidReceiveResponseEP14_CFURLResponse_block_invoke + 24
10 CFNetwork 0x21ac9e03 ___ZN20ClassicURLConnection21withLoaderClientAsyncEU13block_pointerFvP21LoaderClientInterfaceE_block_invoke + 14
11 CFNetwork 0x21b14ca9 ___ZNK25URLConnectionInstanceData18withWorkQueueAsyncEU13block_pointerFvvE_block_invoke + 12
12 libdispatch.dylib 0x2fc548cb _dispatch_call_block_and_release + 10
13 libdispatch.dylib 0x2fc5c651 _dispatch_queue_drain + 952
14 libdispatch.dylib 0x2fc5709d _dispatch_queue_invoke + 84
15 libdispatch.dylib 0x2fc5dba1 _dispatch_root_queue_drain + 320
16 libdispatch.dylib 0x2fc5ecd7 _dispatch_worker_thread3 + 94
17 libsystem_pthread.dylib 0x2fdb5e31 _pthread_wqthread + 668
Thanks,
Dan
This is a bug in Apple's code and there is nothing you can do about it, other than wait for an iOS update (or you may want to avoid using the NSURLSession APIs and invoking -[NSURLHTTPResponse allHeaderFields]). But don't hold your horses, it's been there since at least iOS 7.0 and has been reported multiple times (I have done it and my ticket got closed as dupe) and is still not fixed on iOS 8.0.2.
Try updating to the latest AFNetworking 2.5.3.
I'm getting different kind of crash reports related to VectorKit and MKMapSnapShotter. Crashes occur pretty random, but it seems like they happen most when returning from the background. The device does not send out any memory warnings before it happens.
What's happening here?
I'm using:
if (!_snapshotQueue) {
_snapshotQueue = dispatch_queue_create("com.bestappever.snapshot", DISPATCH_QUEUE_SERIAL);
}
[_snapshotter cancel]
_snapshotter = [[MKMapSnapshotter alloc] initWithOptions:options];
__weak __typeof(self)__self = self;
[_snapshotter startWithQueue:queue completionHandler:^(MKMapSnapshot *snapshot, NSError *error) {
dispatch_async(dispatch_get_main_queue(), ^{
__strong __typeof(__self)_self = __self;
[_self doSomething];
});
}];
The most common one is as follows:
Thread 11 Crashed:
0 libobjc.A.dylib 0x38502b66 objc_msgSend + 5
1 VectorKit 0x35bc8997 -[VKTileProvider changeTileForKey:toState:withMetadata:withTile:forLayer:] + 51
2 VectorKit 0x35c1f88d -[VKTileProvider tileSource:invalidateKeys:] + 168
3 VectorKit 0x35c41325 -[VKTileSource didFailToLoadTileKey:error:] + 196
4 GeoServices 0x32ca906b ___ZN8LoadItem15deleteRequesterEP8NSStringbb_block_invoke + 87
5 libdispatch.dylib 0x389ec0c3 _dispatch_call_block_and_release + 11
6 libdispatch.dylib 0x389f0e7b _dispatch_queue_drain + 375
7 libdispatch.dylib 0x389edf93 _dispatch_queue_invoke + 43
8 libdispatch.dylib 0x389f1745 _dispatch_root_queue_drain + 77
9 libdispatch.dylib 0x389f19c5 _dispatch_worker_thread2 + 57
10 libsystem_pthread.dylib 0x38b1bdff _pthread_wqthread + 298
11 libsystem_pthread.dylib 0x38b1bcc4 start_wqthread + 8
Some other examples:
Thread 11 Crashed:
0 libobjc.A.dylib 0x3850a7aa lookUpImpOrForward + 94
1 libobjc.A.dylib 0x3850302b _class_lookupMethodAndLoadCache3 + 35
2 libobjc.A.dylib 0x38502df9 _objc_msgSend_uncached + 25
3 VectorKit 0x35bc8997 -[VKTileProvider changeTileForKey:toState:withMetadata:withTile:forLayer:] + 50
4 VectorKit 0x35bc895d -[VKTileProvider tileSource:didFetchTile:forKey:] + 60
5 VectorKit 0x35bc8915 -[VKTileSource fetchedTile:forKey:] + 44
6 VectorKit 0x35bc9a95 -[VKTileSetBackedTileSource fetchedTile:forKey:] + 212
7 VectorKit 0x35bc889d -[VKTileSource _fetchedTile:] + 224
8 VectorKit 0x35bc8409 __49-[VKTileSource decodeData:downloadKey:sourceKey:]_block_invoke_3 + 109
9 libdispatch.dylib 0x389ec0c3 _dispatch_call_block_and_release + 11
10 libdispatch.dylib 0x389f0e7b _dispatch_queue_drain + 375
11 libdispatch.dylib 0x389edf93 _dispatch_queue_invoke + 43
12 libdispatch.dylib 0x389f1745 _dispatch_root_queue_drain + 77
13 libdispatch.dylib 0x389f19c5 _dispatch_worker_thread2 + 57
14 libsystem_pthread.dylib 0x38b1bdff _pthread_wqthread + 298
15 libsystem_pthread.dylib 0x38b1bcc4 start_wqthread + 8
Thread 6 Crashed:
0 libsystem_kernel.dylib 0x390a41fc __pthread_kill + 8
1 libsystem_c.dylib 0x39054ffd abort + 76
2 Ding Dong 0x00090de7 uncaught_exception_handler + 27
3 CoreFoundation 0x2e6a524f __handleUncaughtException + 579
4 libobjc.A.dylib 0x38ae590f _objc_terminate() + 175
5 libc++abi.dylib 0x3839a1c7 std::__terminate(void (*)()) + 79
6 libc++abi.dylib 0x38399a1d __cxxabiv1::exception_cleanup_func(_Unwind_Reason_Code, _Unwind_Exception*) + 1
7 libobjc.A.dylib 0x38ae5783 objc_exception_throw + 250
8 CoreFoundation 0x2e6a88e7 -[NSObject doesNotRecognizeSelector:] + 202
9 CoreFoundation 0x2e6a71cb ___forwarding___ + 707
10 CoreFoundation 0x2e5f64d8 _CF_forwarding_prep_0 + 24
11 VectorKit 0x36077cb9 -[VKTileProvider tileSource:keyIsNeeded:] + 68
12 VectorKit 0x36077c2b -[VKTileSource _shouldDecodeTile:] + 178
13 VectorKit 0x36077a91 -[VKTileSource didFetchData:forKey:] + 108
14 GeoServices 0x3319a087 ___ZNK49-[GEOTileLoaderInternal _loadedTile:forKey:info:]66__49-[GEOTileLoaderInternal _loadedTile:forKey:info:]_block_invoke3$_1clERKN8LoadItem9RequesterE_block_invoke_2 + 55
15 libdispatch.dylib 0x38fc8d1b _dispatch_call_block_and_release + 11
16 libdispatch.dylib 0x38fcf273 _dispatch_queue_drain$VARIANT$mp + 375
17 libdispatch.dylib 0x38fcf06b _dispatch_queue_invoke$VARIANT$mp + 43
18 libdispatch.dylib 0x38fcfce1 _dispatch_root_queue_drain + 77
19 libdispatch.dylib 0x38fcff59 _dispatch_worker_thread2 + 57
20 libsystem_pthread.dylib 0x3910adbf _pthread_wqthread + 298
21 libsystem_pthread.dylib 0x3910ac84 start_wqthread + 8
Thread 16 Crashed:
0 VectorKit 0x35a36476 std::__1::__hash_iterator<std::__1::__hash_node<std::__1::pair<VKTileKey, void const*>, void*>*> std::__1::__hash_table<std::__1::pair<VKTileKey, void const*>, std::__1::__unordered_map_hasher<VKTileKey, void const*, hashkey, true>, std::__1::__unordered_map_equal<VKTileKey, void const*, eqkey, true>, vk_allocator<std::__1::pair<VKTileKey, void const*> > >::find<VKTileKey>(VKTileKey const&) + 54
1 VectorKit 0x35a3642d -[VKTileKeyMap objectForKey:] + 24
2 VectorKit 0x35a3a837 -[VKTileKeyList containsKey:] + 34
3 VectorKit 0x35a54b9f -[VKTileProvider tileMatters:] + 78
4 VectorKit 0x35a549c1 -[VKTileProvider changeTileForKey:toState:withMetadata:withTile:forLayer:] + 92
5 VectorKit 0x35a5495d -[VKTileProvider tileSource:didFetchTile:forKey:] + 60
6 VectorKit 0x35a54915 -[VKTileSource fetchedTile:forKey:] + 44
7 VectorKit 0x35a5489d -[VKTileSource _fetchedTile:] + 224
8 VectorKit 0x35a54409 __49-[VKTileSource decodeData:downloadKey:sourceKey:]_block_invoke_3 + 109
9 libdispatch.dylib 0x388780c3 _dispatch_call_block_and_release + 11
10 libdispatch.dylib 0x3887ce7b _dispatch_queue_drain + 375
11 libdispatch.dylib 0x38879f93 _dispatch_queue_invoke + 43
12 libdispatch.dylib 0x3887d745 _dispatch_root_queue_drain + 77
13 libdispatch.dylib 0x3887d9c5 _dispatch_worker_thread2 + 57
14 libsystem_pthread.dylib 0x389a7dff _pthread_wqthread + 298
15 libsystem_pthread.dylib 0x389a7cc4 start_wqthread + 8
How repeatable is this? Is the device coming out of sleep mode? What is on the screen when the App goes into the background?
Within the ViewController you can try registering the NSNotification event, UIApplicationWillResignActiveNotification
When the App is going into the background, calling cancel on any MKMapSnapshotter
If that doesn't work, you could attempt more drastic measures, like hiding views, just to identify if they are related to the crash.
I had the same issue with frequent but random crashes ususally looking like:
VectorKit 0x10663fe9 -[VKTileProvider tileSource:didFetchTile:forKey:] + 105
I fixed it by removing this line:
this.mapSnapshotter.Cancel();
So I think Apple has a bug with the MKMapSnapshotter Cancel method.
Hope that's helpful