检索Android设备上的免费内部存储器

时间:2016-05-11 12:19:39

标签: android diskspace

我想知道如何在我的Android移动应用程序上检索设备信息,作为设备上可用的免费内存。

2 个答案:

答案 0 :(得分:0)

这是我在任何给定时间用来获取可用内存的函数:

public static long getAllowedMemory() {
    final long defaultValue = 16l * 1024l * 1024l;

    final Runtime runtime = Runtime.getRuntime();
    if (runtime != null) {
        final Long value = runtime.maxMemory();
        if (value == Long.MAX_VALUE) {
            // No value available
            return defaultValue;
        } else {
            return value;
        }

    }

    return defaultValue;
}

答案 1 :(得分:0)

试试这个。以下代码以MB为单位返回内部存储器,

StatFs stat = new StatFs(Environment.getDataDirectory().getPath());
long bytesAvailable = (long)stat.getFreeBlocks() * (long)stat.getBlockSize();
long megAvailable = bytesAvailable / 1048576;