Ios 使用UIWebView崩溃

Ios 使用UIWebView崩溃,ios,xamarin.ios,uiwebview,uikeyboard,Ios,Xamarin.ios,Uiwebview,Uikeyboard,我有一个包装UIWebView的Xamarin.iOS应用程序。不幸的是,我在Firebase控制台中收到了大量的崩溃;它只出现在配备iOS 10的iPhone上,iPad没有这个问题 就我个人而言,我无法重现崩溃,因此我只有stacktrace: EXC_BAD_ACCESS / KERN_INVALID_ADDRESS 1 libobjc.A.dylib objc_msgSend + 115024 2 UIKit -[_UIKeyboardText

我有一个包装UIWebView的Xamarin.iOS应用程序。不幸的是,我在Firebase控制台中收到了大量的崩溃;它只出现在配备iOS 10的iPhone上,iPad没有这个问题

就我个人而言,我无法重现崩溃,因此我只有stacktrace:

EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
1   libobjc.A.dylib     objc_msgSend + 115024
2   UIKit               -[_UIKeyboardTextSelectionController selectTextWithGranularity:atPoint:executionContext:] + 5209476
3   UIKit               -[_UIKeyboardBasedNonEditableTextSelectionGestureController oneFingerForcePan:] + 5624368
4   UIKit               -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 6166732
5   UIKit               _UIGestureRecognizerSendTargetActions + 6181120
6   UIKit               _UIGestureRecognizerSendActions + 1700016
7   UIKit               -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 266176
8   UIKit               _UIGestureEnvironmentUpdate + 6116260
9   UIKit               -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 6115188
10  UIKit               -[UIGestureEnvironment _updateGesturesForEvent:window:] + 6111776
11  UIKit               -[UIWindow sendEvent:] + 258892
12  UIKit               -[UIApplication sendEvent:] + 65404
13  UIKit               __dispatchPreprocessedEventFromEventQueue + 8428060
14  UIKit               __handleEventQueue + 8405368
15  UIKit               __handleHIDEventFetcherDrain + 8406436
16  CoreFoundation      __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 898088
17  CoreFoundation      __CFRunLoopDoSources0 + 896408
18  CoreFoundation      __CFRunLoopRun + 887204
19  CoreFoundation      CFRunLoopRunSpecific + 36256
20  GraphicsServices    GSEventRunModal + 49264
21  UIKit               UIApplicationMain + 478360
22  XamarinApp.iOS      (wrapper_managed-to-native)_UIKit.UIApplication:UIApplicationMain (<unknown>:1)
23  XamarinApp.iOS      Main (UIApplication.cs:79)
24  XamarinApp.iOS      XamarinApp_iOS_XamarinApp_iOS_Application_Main_string__ + 39656
25  XamarinApp.iOS      wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 634656
26  Mono                4316120312 + 378104
27  Mono                4316622816 + 880608
28  Mono                4316635652 + 893444
29  Mono                4316004656 + 262448
30  XamarinApp.iOS      xamarin_main (monotouch-main.m:480)
31  XamarinApp.iOS      main (main.m:131)
32  libdyld.dylib       start + 17816
EXC\u访问错误/KERN\u地址无效
1 libobjc.A.dylib objc_msgSend+115024
2 UIKit-[\u UIKeyboardTextSelectionController selectTextWithGranularity:atPoint:executionContext:+5209476
3 UIKit-[\u UIKeyboardBasedNonEditableTextSelectionGestureController oneFingerForcePan:+5624368
4 UIKit-[UIgestureRecognitzerTarget\u SendActionWithgestureRecognitzer:+6166732
5 UIKit _UIgestureRecognitizerSendTargetActions+6181120
6 UIKit _UIgestureRecognitizerSendActions+1700016
7 UIKit-[UIGestureRecognitor\u更新事件:按钮事件:+266176
8 UIKit\u UIgestureEnvironment更新+6116260
9 UIKit-[UIGestureEnvironment\u deliverEvent:ToGetureRecognitors:usingBlock:+6115188
10 UIKit-[UIGestureEnvironment\u UpdateSteuresForEvent:window:+6111776
11 UIKit-[UIWindow sendEvent:+258892
12 UIKit-[UIApplication sendEvent:+65404
13 UIKit_uuu调度预处理事件Romeventqueue+8428060
14 UIKit_uuuhandleeventqueue+8405368
15 UIKit_uuuHandlehideEventFetcherDrain+8406436
16 CoreFoundation\uuuuCfRunLoop\u正在调用\uuOut\uU到\uA\uSource0\uU执行\uuU函数\uuuuuu+898088
17 CoreFoundation\uU CFRunLoopDoSources0+896408
18 CoreFoundation uu CFRunLoopRun+887204
19 CoreFoundation CFRunLoopRunSpecific+36256
20个图形服务GSEventRunModal+49264
21 UIKit UIApplicationMain+478360
22 XamarinApp.iOS(包装器\u托管到本机)\u UIKit.UIApplication:UIApplicationMain(:1)
23 XamarinApp.iOS Main(UIApplication.cs:79)
24 XamarinApp.iOS XamarinApp_iOS_XamarinApp_iOS_应用程序_Main_string_+39656
25 XamarinApp.iOS包装器\u运行时\u调用\u对象\u运行时\u调用\u动态\u intptr\u intptr\u intptr\u intptr+634656
26 Mono 4316120312+378104
27单声道4316622816+880608
28单声道4316635652+893444
29单声道4316004656+262448
30 XamarinApp.iOS xamarin_main(monotouch main.m:480)
31 XamarinApp.iOS main(main.m:131)
32 libdyld.dylib开始+17816

任何帮助都将不胜感激。迁移到WKWebView对我来说不是一个选项,因为该应用程序与Cookie非常兼容。

本机堆栈跟踪看起来指向的是按钮事件,而不是与UIWebview相关的事件,我想你的应用程序中没有任何导航按钮?@Digitalsa1nt确实,该应用程序包含一个额外的屏幕(带导航栏)在某些情况下,会在启动时自动打开。但是,根据Firebase analytics,即使该屏幕未打开,也可能发生崩溃。并且,导航栏用UIWebView隐藏在屏幕上。您必须查看Xamarin的Bugzilla,因为Xamarin有很多错误,修复后更新Core。@JosePoseS没有任何错误由于stacktrace包含一些私有的UIKit类,我猜UIWebView中有一个bug(实际上是相当多的bug组件),所以我想知道是否有一些解决办法。@NikolaiDoronin你能用xamarin studio调试这个崩溃并查看跟踪吗?因为所有iOS kenerl和xamarin的崩溃都是一样的。如果你调试这个xamarin,它会显示更好的日志,你可以在Bugzilla中搜索。