Android External Storage Free Space

less than 1 minute read

Today I wanted to store some images to SD card and I wanted to find the available space:

 * Get the available free space in the external storage (usually SD card)
 * @return the available space in gigabytes
public double getExternalStorageFreeSpace() {
	StatFs stat = new StatFs(Environment.getExternalStorageDirectory().getPath());
	double sdAvailSize = (double) stat.getAvailableBlocks()	* (double) stat.getBlockSize();
	// One binary gigabyte equals 1,073,741,824 bytes.
	double gigaAvailable = sdAvailSize / 1073741824;

	return gigaAvailable;