Checks if there is enough Space on SDCard - Android Hardware

Android examples for Hardware:SD Card

Description

Checks if there is enough Space on SDCard

Demo Code


//package com.java2s;

import android.os.Environment;
import android.os.StatFs;

import java.io.File;

public class Main {
    /**/* w  w  w.  j  av  a  2 s  . com*/
     * Checks if there is enough Space on SDCard
     *
     * @param updateSize Size to Check
     * @return True if the Update will fit on SDCard, false if not enough space
     * on SDCard Will also return false, if the SDCard is not mounted as
     * read/write
     */
    public static boolean enoughSpaceOnSdCard(long updateSize) {
        String status = Environment.getExternalStorageState();
        if (!status.equals(Environment.MEDIA_MOUNTED))
            return false;
        return (updateSize < getRealSizeOnSdcard());
    }

    /**
     * get the space is left over on sdcard
     */
    public static long getRealSizeOnSdcard() {
        File path = new File(Environment.getExternalStorageDirectory()
                .getAbsolutePath());
        StatFs stat = new StatFs(path.getPath());
        long blockSize = stat.getBlockSize();
        long availableBlocks = stat.getAvailableBlocks();
        return availableBlocks * blockSize;
    }
}

Related Tutorials