0

我正在使用 BitmapFactory.decodeFile(String, Options) 加载通过单独服务从 Internet 下载的图像,有时它返回 null。我以为这是因为图像损坏或不完整,但我抓住了解码器,它正在查看一个实际上看起来完整的文件——无论如何我可以在 Windows 中查看它并且没有明显的故障或不完整的部分。

这让我不禁要问:什么情况下会导致 decodeFile(...) 返回 null?不完整、损坏或非图像文件显然是其中之一,但还有其他文件吗?我知道如果系统内存不足,这是记录在案的行为,但实际上我已经为此获取(并处理)OutOfMemoryError throwables。

我正在测试的平板电脑最近确实从 3.0 升级到了 3.1。此版本中的内存不足行为是否发生了变化?

更新

我刚刚在 logcat 中注意到这一行:

08-17 16:14:46.190: 调试/skia(3948): libjpeg 错误 105 < Ss=%d, Se=%d, Ah=%d, Al=%d> 来自 read_scanlines [640 841]

4

0 回答 0