public class MemoryUtils {
public static String getRomSpace() {
final StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
long totalCounts = statFs.getBlockCountLong();
long availableCounts = statFs.getAvailableBlocksLong() ;
long size = statFs.getBlockSizeLong();
long availROMSize = availableCounts * size;
long totalROMSize = totalCounts *size;
StringBuilder sb = new StringBuilder();
sb.append(" 可用ROM:" + availROMSize + "B");
sb.append(" 总ROM:" + totalROMSize + "B");
return sb.toString();
}
public static int getRomPercentage() {
final StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
long totalCounts = statFs.getBlockCountLong();
long availableCounts = statFs.getAvailableBlocksLong() ;
long size = statFs.getBlockSizeLong();
double availROMSize = availableCounts * size;
double totalROMSize = totalCounts *size;
return (int)(availROMSize/totalROMSize*100);
}
}
Logger.e("wangruicd " + MemoryUtils.getRomSpace());
int storage = MemoryUtils.getRomPercentage();
Logger.e("wangruicd 剩余空间: "+storage+"%");