Android获取SD卡总容量,可用大小,机身内存总容量及可用大小

时间:2022-05-03
本文章向大家介绍Android获取SD卡总容量,可用大小,机身内存总容量及可用大小,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
public long getSDTotalSize()
{
    /*获取存储卡路径*/
    File sdcardDir= Environment.getExternalStorageDirectory();
    /*StatFs 看文件系统空间使用情况*/
    StatFs statFs=new StatFs(sdcardDir.getPath());
    long blockSize= statFs.getBlockSizeLong();

    long totalSize=statFs.getBlockCountLong();

    return blockSize*totalSize;
}

    /**
     * 获得sd卡剩余容量,即可以大小
     * @return
     */
    public long getSdAvaliableSize()
    {
        File path=Environment.getExternalStorageDirectory();
        StatFs statFs=new StatFs(path.getPath());
        long blockSize=statFs.getBlockSizeLong();
        long availableBlocks=statFs.getAvailableBlocksLong();
        return blockSize*availableBlocks;
    }

    /**
     * 获得机身内存大小
     * @return
     */
    public long getRomTotalSize()
    {
        File path=Environment.getDataDirectory();
        StatFs statFs=new StatFs(path.getPath());
        long blockSize=statFs.getBlockSizeLong();
        long tatalBlocks= statFs.getBlockCountLong();
     return blockSize*tatalBlocks;
    }

    /**
     * 获得机身可用内存
     * @return
     */
    private long getRomAvailableSize()
    {
        File path=Environment.getDataDirectory();
        StatFs statFs=new StatFs(path.getPath());
        long blockSize=statFs.getBlockSizeLong();
        long availableBlocks=statFs.getAvailableBlocksLong();
        return blockSize*availableBlocks;
    }