2013-10-22 44 views
16

我有一款应用程序可以在iOS 6上完美工作,但在iOS 7上,如果用户采取了非常具体的操作(太复杂但无法使用,但它使用的是UIWebView且一致),应用程序与错误崩溃:我在哪里可以了解更多关于WebCoreSharedBufferData的信息?

*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[WebCoreSharedBufferData getBytes:range:]: range {0, 8} exceeds data length 0' 

现在我很乐意做一些研究和实验自己更多,但我只是找不到WebCoreSharedBufferData。谷歌搜索揭示了几个人(如herehereherehere),他们有类似的问题,但他们的问题要么没有得到回答,要么以某种方式使用他们的应用程序(如放大地图或使用第三方代码)我没有做。

Xcode文档从未听说过WebCoreSharedBufferData,并且我的项目搜索没有提及它。谷歌搜索也让我失望,主要是问题和GitHub项目,我没有使用第三方代码。我假设这是苹果UIWebView功能中的深度,但没有能够了解更多信息,我的操作很困难。

所以我的问题是:没有人知道我在哪里可以找到信息/教程/说明等WebCoreSharedBufferData?我觉得如果我能更好地理解它,我就能找到解决方案,只是很难在黑暗中进行调试......

或者,有没有人只是直接了解什么改变了WebCoreSharedBufferData iOS 7可能会造成这样的错误?

编辑:由kcbanner提供线索,在下面的意见(谁也经历了类似的问题):这两个我们的问题涉及与画布的网页,并与画布onclick事件。也许iOS 7中的画布点击处理有所改变?

+0

用户采取的行动是什么?我也有这个问题,并没有成功追查触发事件。 – kcbanner

+0

这是相当复杂和特定于应用程序,您需要访问'UIWebView'中的某个页面并调用该页面上的某个JavaScript函数(与创建onclick事件并将Canvas图层放置在一起) ),然后重新加载页面并尝试再次调用相同的'onclick'函数。我不是一个JS家伙,这是一个非常奇怪的模式,所以我无法追踪它,但是当你按照这些步骤时,崩溃发生在100%的时间。你呢? – Nerrolken

+1

类似的情况,我们利用画布和点击这些画布上的事件。也许这是一个画布点击处理程序的错误。 – kcbanner

回答

0

如果您使用IOS我不会使用onClick。 IOS会让你点击并在onClicks上放置一些时髦的200毫秒延迟,从而导致有时会打破“webglue”。 JavaScript有一个完整的触摸库,我会使用,还有一些像Hammer.js将解决您的问题。另外,我会为你的应用程序的webview组件使用phonegap(即使它不是完整的应用程序),因为它们解决了许多怪癖/错误IOS与他们的本地webview(即使它仅用于网站浏览)。

1

我刚刚也遇到了这个错误。我的设置是phonegap 3.2和createjs 0.7.0,我从来没有与ios6的问题,但ios7导致我适合。我的解决方案是使用一个画布元素。我用png spritesheet位图数据加载了两个画布元素并来回切换,现在我只是通过清除旧数据和添加新数据来重用相同的画布元素。似乎已经解决了这个问题。仍然不明白为什么我不能有两个画布元素。

只是多一点...似乎这只发生在我快速重新加载两个画布元素与PNG数据。我不认为这是一个损坏的PNG的问题,因为它会发生在每次不同的位图上,现在我重用相同的画布元素一切正常。

相关问题