Android - 如何捕获java.io.IOException:设备上没有剩余空间

时间:2012-02-16 08:44:02

标签: android memory file-io out-of-memory

要清除它,这是在实际设备而不是模拟器上。 我有一个文件设置,我存储图像,突然设备将在logcat中的设备警告上留下没有空间。我可以看到我在内存中留有空间但由于某种原因它只是不会保存更多的文件。我使用小数字来命名图像,所以我没有疯狂的名字大小。

现在我在文件中有大约80个图像,然后才会出现错误。

我想我可以抓住空间错误并清空文件,我知道我应该通过检查实际空间是多少以及我剩下多少空间来做到这一点但是我还没有尝试解决这个问题。

我遇到的另一个问题是我告诉应用程序使用

将数据存储在SD卡上
android.os.Environment.getExternalStorageDirectory();

但它将数据存储在内部存储器中。我已经设置了所有权限,但由于某种原因,它存储在内部而不是外部。

所以有人可以指出一些关于如何检查可用于我的应用程序存储的内存量的信息,也可能是一些提示,当我试图在外部存储时,为什么我最终存储到内部。

1 个答案:

答案 0 :(得分:1)

您应该使用android.od.Environment.getExternalStorageDirectory.getPath()

检查this