java.io.IOException:Android 设备上没有剩余空间
Posted
技术标签:
【中文标题】java.io.IOException:Android 设备上没有剩余空间【英文标题】:java.io.IOException: No space left on device Android 【发布时间】:2012-05-15 04:49:24 【问题描述】:我们在 android 市场上有应用程序,我们的用户从这个错误中得到了很多: java.io.IOException:设备上没有剩余空间
从我目前发现的情况来看,我知道他们在外部存储上留有足够的空间,而且这只发生在 Android 2.x 上。
我对Linux文件系统做了一个小研究,发现除了空间限制之外,每个目录中的文件数和根目录下的文件总数都有限制。但看起来我们的应用程序没有达到任何这些。
你有没有过这样的两场比赛? 对 Android (2.x) 中发生的变化以及它们如何在 Android (3+) 中修复它有任何想法吗?编辑:这不是安装问题,而是在尝试保存下载的文件时。
【问题讨论】:
您的应用是否在安卓内部存储中下载了大量文件?如果是这样,请参考此链接:***.com/questions/9320070/… @sultan.of.swing 不,这不是它,我从一开始就做了他认为正确的方法 【参考方案1】:添加导致异常的绝对文件路径的日志输出可能会有所帮助。
如果写入的文件被写入本地内存文件系统而不是 sd 卡文件系统,这是一个可能的解决方案:
java.io.IOException: No space left on device
我的意思是设备的内部存储文件系统上没有足够的内存。
您可以尝试安装应用在SD卡上,而不是通过在清单文件中设置一个条目:
<manifest ..... android:installLocation="preferExternal">
编辑
如果应用程序安装在内存中,它的本地文件也会存储在本地内存中。 如果一个应用程序安装在 sd-cardit 上,它的本地文件也存储在 sd-card 上。
所以在 sd 卡上安装应用程序可能会解决您的问题。
【讨论】:
您似乎没有理解这个问题。我为你添加一个编辑。请再读一遍,这绝对不是空间问题,我们检查过了。 我更新了答案。您可以将文件路径添加到您的问题中吗?【参考方案2】:我相信(如果我不正确的话)在所有空间用完后打开大文件或任何超过永久存储最大值的文件可能会遇到问题。例如:直到我用完设备上的所有空间直到最后一点,我的 android 才打开没有任何问题。除非我升级或删除所有我最喜欢的歌曲和电影,否则它将无法正常工作。测试并尝试了它。但话又说回来,错误可能更灵活,也意味着其他东西......:D
【讨论】:
以上是关于java.io.IOException:Android 设备上没有剩余空间的主要内容,如果未能解决你的问题,请参考以下文章
java.io.IOException: toDerInputStream 拒绝标签类型 77
java.io.IOException:系统找不到指定的路径
java.io.IOException: Connection reset by peer和java.io.IOException: Connection timed out。Socket
android java.io.IOException:传输端点未连接