Android读取手机ROM总大小方法

private String getTotalMemSizeInfo(){ //总空间
    File userDataDir = Environment.getDataDirectory();
    StatFs stat = new StatFs(userDataDir.getPath());
    long blockSize = stat.getBlockSizeLong();
    long totalBlocks = stat.getBlockCountLong();
    long size = totalBlocks * blockSize;
    //Toast.makeText(getContext(),"size:"+size,Toast.LENGTH_SHORT).show();
    long GB = 1024 * 1024 * 1024;
    final long[] size_mapping_table = {2*GB, 4*GB, 8*GB, 16*GB, 32*GB, 64*GB, 128*GB,256*GB,512*GB};
    String[] size_mapping_table_str = {"2G","4G","8G","16G","32G","64G","128G","256G","512G"};
    int i;
    for(i = 0 ; i < size_mapping_table.length; i ++)
        if(size <= size_mapping_table[i])
            break;
    if(i == size_mapping_table.length)
        i --;
    return size_mapping_table_str[i];
}

你可能感兴趣的:(Android读取手机ROM总大小方法)