我有一个使用UIWebView的应用程序,一切都在(现在仍然)在iOS 6上完美运行.但是在iOS 7上,当我尝试加载时,它有时会导致错误
ImageIO:PNG而不是PNG文件某些PNG文件,(例如
this one).
现在,显然PNG文件没有损坏,因为它们可以在iOS 6上运行,有时甚至可以在iOS 7上运行,但有时它们会回复该错误.我找不到任何确定错误何时发生的常见原因,并且我没有做任何与它们有关的事情可能会解释它:除了在UIWebView中加载页面之外,我的代码不会触及它们,所以它似乎是WebView在内部做的事情.当然,这使得更难确定.
我知道这是一个奇怪的问题,有点像问“福特是否改变了车轮的工作方式”,但苹果公司是否改变了它在iOS 7中处理PNG的方式?谁能想到可能导致iOS 7特定错误的原因?
解决方法
这个问题不太可能是巴布亚新几内亚本身.如果是,那么每次都会失败.更有可能的是,您正在破坏数据,可能是由于竞争条件(因为它是间歇性的).例如,您可能正在执行除主线程之外的其他位置的WebKit调用.你可能已经在iOS 6上得到了它,但在iOS 7上可能已经改变,导致竞争条件失败.如果您在UIWebView之外处理这些PNG,那么您可能会遇到竞争条件.那是我看的两个主要地方.