iOS 7产生随机错误:JPEG不是JPEG文件:以0x00 0x00开头

3
我有一个应用程序,它是一个包装器,用于展示以html5 / jpg格式创建的数字杂志。
图书通过UIWebView显示,图书内容存储在设备上的本地。
虽然这在IOS 6设备和IOS 7模拟器上正常工作,但在IOS 7设备上,我会随机收到以下错误:
<Error>: ImageIO: JPEG Not a JPEG file: starts with 0x00 0x00
<Error>: ImageIO: JPEG Not a JPEG file: starts with 0x00 0x00
<Error>: ImageIO: JPEG Not a JPEG file: starts with 0x00 0x00

稍后发生了一次崩溃:

 <Error>: *** Terminating app due to uncaught exception 'NSRangeException', reason: '***     
-[WebCoreSharedBufferData getBytes:range(inlove): range {0, 4000} exceeds data length 0'

当浏览书籍页面时,有些页面(图片)有时会正确显示,有时则完全不显示。我怀疑这不是性能问题,因为 iPad 2 和 iPad 4 都会出现此情况。注意:html 应用程序并非 krpano viewer。

所有资源都位于应用程序的文档文件夹中。顺便说一下,这不仅发生在一本书上,而是在加载到应用程序中的所有书籍上。 - idplanter
@idplanter,你遇到了这个问题吗? - hoya21
你最终找到了崩溃的原因吗? - Vik
1个回答

0

这是一个真正的随机问题还是在随机文件上经常发生的问题?

如果是后者,我建议对文件的前几个字节进行转储。您应该在开头找到图像标记FF-DA。

如果是前者,那就更难了。我会添加调试代码,记录文件中前几个字节的值。

这样,您就可以确定JPEG文件是否存在问题,或者应用程序是否出现了问题。

最容易解决的问题是JPEG文件具有前导空值,有时会被忽略。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接