Xamarin iOS应用程序SIGSEGV
我的应用程序中偶尔会出现如下SIGSEGV错误(最新版本的Xamarin Studio=5.8.3,Xamarin.iOS=8.9.1.3的c#Xamarin iOS应用程序) 它看起来像是在UIKit中崩溃的,从我自己的应用程序“ObymobiMobileAppiOS”来看,它只是在“main”中 这是什么问题? 如何获取更多信息或调试它 我可以用这个应用程序复制大约5分钟 堆栈跟踪:Xamarin iOS应用程序SIGSEGV,ios,xamarin,segmentation-fault,Ios,Xamarin,Segmentation Fault,我的应用程序中偶尔会出现如下SIGSEGV错误(最新版本的Xamarin Studio=5.8.3,Xamarin.iOS=8.9.1.3的c#Xamarin iOS应用程序) 它看起来像是在UIKit中崩溃的,从我自己的应用程序“ObymobiMobileAppiOS”来看,它只是在“main”中 这是什么问题? 如何获取更多信息或调试它 我可以用这个应用程序复制大约5分钟 堆栈跟踪: at <unknown> <0xffffffff> at (wrapper mana
at <unknown> <0xffffffff>
at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <0xffffffff>
at UIKit.UIApplication.Main (string[],intptr,intptr) [0x00005] in /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:62
at UIKit.UIApplication.Main (string[],string,string) [0x0001c] in /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:45
at Obymobi.Mobile.App.iOS.Application.Main (string[]) [0x000b9] in /Users/billbatchelor/Documents/Mobile Development/AllInOne/Obymobi.Xamarin/Obymobi.Mobile.App.iOS/Main.cs:52
at (wrapper runtime-invoke) object.runtime_invoke_dynamic (intptr,intptr,intptr,intptr) <0xffffffff>
0 ObymobiMobileAppiOS 0x00000001024ef9ac mono_handle_native_sigsegv + 264
1 ObymobiMobileAppiOS 0x00000001024f97cc mono_sigsegv_signal_handler + 316
2 libsystem_platform.dylib 0x000000019890895c _sigtramp + 68
3 UIKit 0x000000018b535540 <redacted> + 216
4 UIKit 0x000000018b535030 <redacted> + 452
5 UIKit 0x000000018b534e38 <redacted> + 216
6 UIKit 0x000000018b534d4c <redacted> + 468
7 UIKit 0x000000018b48fd8c <redacted> + 264
8 UIKit 0x000000018b32ca2c <redacted> + 700
9 UIKit 0x000000018b325f68 <redacted> + 684
10 UIKit 0x000000018b2f918c <redacted> + 264
11 UIKit 0x000000018b59a324 <redacted> + 15424
12 UIKit 0x000000018b2f76a0 <redacted> + 1716
13 CoreFoundation 0x0000000186870240 <redacted> + 24
14 CoreFoundation 0x000000018686f4e4 <redacted> + 264
15 CoreFoundation 0x000000018686d594 <redacted> + 712
16 CoreFoundation 0x00000001867992d4 CFRunLoopRunSpecific + 396
17 GraphicsServices 0x000000018ffaf6fc GSEventRunModal + 168
18 UIKit 0x000000018b35efac UIApplicationMain + 1488
19 ObymobiMobileAppiOS 0x0000000100b61f28 wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr + 344
20 ObymobiMobileAppiOS 0x00000001005387c0 UIKit_UIApplication_Main_string___intptr_intptr + 48
21 ObymobiMobileAppiOS 0x000000010053865c UIKit_UIApplication_Main_string___string_string + 188
22 ObymobiMobileAppiOS 0x000000010009c654 Obymobi_Mobile_App_iOS_Application_Main_string__ + 1508
23 ObymobiMobileAppiOS 0x0000000101007130 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 160
24 ObymobiMobileAppiOS 0x00000001024fb88c mono_jit_runtime_invoke + 1260
25 ObymobiMobileAppiOS 0x00000001025511e0 mono_runtime_invoke + 128
26 ObymobiMobileAppiOS 0x00000001025553c4 mono_runtime_exec_main + 404
27 ObymobiMobileAppiOS 0x00000001025c6a50 xamarin_main + 1812
28 ObymobiMobileAppiOS 0x00000001024b9688 main + 96
29 libdyld.dylib 0x000000019875aa08 <redacted> + 4
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries used by your application.
0 ObymobiMobileAppiOS 0x0011d4f7 mono_handle_native_sigsegv + 311
1 ObymobiMobileAppiOS 0x0014c505 mono_sigsegv_signal_handler + 213
2 libsystem_platform.dylib 0x08c8003b _sigtramp + 43
3 ??? 0xffffffff 0x0 + 4294967295
4 VectorKit 0x10663fe9 -[VKTileProvider tileSource:didFetchTile:forKey:] + 105
5 VectorKit 0x1067140e -[VKTileSource fetchedTile:forKey:] + 62
6 VectorKit 0x106c2617 -[VKTileSetBackedTileSource fetchedTile:forKey:] + 247
7 VectorKit 0x106705b5 -[VKTileSource _fetchedTile:] + 309
8 VectorKit 0x10671985 __49-[VKTileSource decodeData:downloadKey:sourceKey:]_block_invoke_2 + 181
9 libdispatch.dylib 0x08930d8a _dispatch_call_block_and_release + 15
10 libdispatch.dylib 0x0894decf _dispatch_client_callout + 14
11 libdispatch.dylib 0x0893602e _dispatch_queue_drain + 411
12 libdispatch.dylib 0x08935d33 _dispatch_queue_invoke + 197
13 libdispatch.dylib 0x0893820b _dispatch_root_queue_drain + 428
14 libdispatch.dylib 0x089393e7 _dispatch_worker_thread3 + 108
15 libsystem_pthread.dylib 0x08c8d1da _pthread_wqthread + 724
16 libsystem_pthread.dylib 0x08c8ae2e start_wqthread + 30
我遇到了同样的问题。就我而言,我找到了一些解决方案:
我在使用UIDocumentInteractionController时遇到了这个问题。我使用这个类的实例作为本地参数,垃圾收集器甚至在函数执行完成之前就刷新了那个实例。将那个实例放到全局范围解决了我的问题。Xamarin在OS X和Windows上的版本相同吗?我有类似的问题错误。当我更新Xamarin时,一切正常。你必须从Xcode获得一个符号化日志,看看这个:我在问题中添加了另一个没有修订行的示例。知道问题是什么吗?这是两个完全不同的堆栈跟踪,可能有两个不同的原因。我从未见过第二个这样的例子(VectorKit)崩溃之前,但它似乎与Xamarin.iOS无关,因为它似乎也发生在Objective-C应用程序中(例如),而且它似乎与MapKit有关(你在使用MapKit吗?)。我会开始尝试跟踪第一次崩溃(在UIKit中),因为这可能是最容易弄清楚的(第一步始终是获取完全符号化的崩溃报告)。Rolf,你是对的,第二个堆栈跟踪与导致问题的MKMapSnapshotter Cancel方法有关,因此我已发布了该链接的答案。第一个崩溃当前未发生,但如果我再次看到它,将对其进行更多调查。。。