当图像库中的内存已满时会发生什么

时间:2014-07-03 18:02:00

标签: android memory image-gallery

有一个图片库应用程序可以在线下载图像。我想知道如果手机内存/ SD卡满了将会发生什么;如果出现错误,那我该怎么办?

3 个答案:

答案 0 :(得分:1)

如果sdcard中没有内存,它将通过IOException。但是如果您知道正在下载的文件大小,那么您可以检查是否有足够的内存,从而可以避免IOException。

修改 Catch Exception

try
{
   //your code here
}
catch(IOException ex)
{
   //do stuff when exception caused.
}

如果你不知道如何使用/ catch异常。请谷歌吧。

答案 1 :(得分:1)

这会捕获OutofMemory错误,但也应检查其他异常

    URL aURL = null;
    Bitmap bm = null;
    try {
        final String imageUrl = CMSServer + url;

        aURL = new URL(imageUrl);
        URLConnection conn = aURL.openConnection();

        InputStream is = new BufferedInputStream(conn.getInputStream());

        is = new BufferedInputStream(conn.getInputStream());
        bm = BitmapFactory.decodeStream(is, null, options);

        is.close();
    } catch (OutOfMemory oom) {
         // do something 
      }
    }
    return bm;
}

答案 2 :(得分:1)

如果一个班级无法调整更多学生,可以做出类比吗?

据我说: - 1.你可以遵循“预防胜于治疗”

  1. 首先,您将检查sdcard本身,如果它说> 1MB,那么您将获得该图像。

  2. 即使出现错误,您也可以提示用户删除older图像以允许新图像,例如我们曾经使用的旧手机,其中msg内存有限,并且会要求删除旧邮件以允许新邮件消息。

  3. 如果你收到错误,那么我可能无法确切地知道要做什么,除非向用户显示“内存不足”。

  4. 谢谢并希望它有所帮助.... :)