iOS 7:UIWebView由于范围exception而崩溃

我目前正在构build一个使用krpano查看器的应用程序,这是一个使用JavaScript构build的Panorama Viewer。 我使用保存在iPad上的本地图像在UIWebView中加载了这个全景浏览器。

但是在使用全景浏览器一段时间后,我得到这个错误,应用程序崩溃:

Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[WebCoreSharedBufferData getBytes:range:]: range {0, 4000} exceeds data length 0' *** First throw call stack: (0x2e213f53 0x38a226af 0x2e213e95 0x2eb4dc31 0x2e16ca65 0x2ef4ce47 0x2ef4cd21 0x2ef68f03 0x2ef682db 0x2ef68029 0x2ef67e61 0x2ef67dcf 0x2ef6bd39 0x2ef6b813 0x2ef5471f 0x2e29b2ed 0x30635c6d 0x30635117 0x30621069 0x30620bad 0x3061d949 0x3061c051 0x38f0c297 0x38f0c09b 0x38f0cd15 0x38f0cf8d 0x39047dbf 0x39047c84) libc++abi.dylib: terminating with uncaught exception of type NSException 

有没有人有一个想法,为什么会这样呢? 当我加载UIWebView中的在线页面时没有问题。

谢谢你的帮助!

这可能是一个内存相关的问题。 当一个Web应用程序使用Javascript分配太多内存时,会发生奇怪的事情。

您最好的select是观察内存警告通知,并尝试从外部影响networking应用程序。 当然,这取决于Web应用程序的具体情况,但是您可能需要尝试禁用userInteractionEnabled一段时间,以使Web视图赶上排队的用户input操作,或者如果内存警告仍然存在,请尝试重新加载Web视图。

不幸的是这里没有简单的解决scheme。

Interesting Posts