当前位置: 代码迷 >> Android >> android系统储存信息的获取
  详细解决方案

android系统储存信息的获取

热度:18   发布时间:2016-05-01 19:58:53.0
android系统存储信息的获取

android系统容量信息用Environment和StaFs两个类来获取,具体方法如下:

1.Environment

??????? File data = Environment.getDataDirectory();//获取手机存储文件对象

??????? File data = Environment.getExternalStorageDirectory();//获取sdcard文件对象

??????? File data = Environment.getExternalStorageDirectory();//获取系统root文件对象

2.StatFs:

??????? StatFs sdStatFs = new StatFs(data.getPath());

??? ??? int availableBlocks = statFs.getAvailableBlocks();// 可用存储块的数量
??? ??? int blockCount = statFs.getBlockCount();// 总存储块的数量
??? ??? int size = statFs.getBlockSize();// 每块存储块的大小
??? ??? int totalSize = blockCount * size;// 总存储量
??? ??? int availableSize = availableBlocks * size;// 可用容量

 // 获取本机容量信息	public String phoneCapacity() {		// 获取本机信息		File data = Environment.getDataDirectory();		StatFs statFs = new StatFs(data.getPath());		int availableBlocks = statFs.getAvailableBlocks();// 可用存储块的数量		int blockCount = statFs.getBlockCount();// 总存储块的数量		int size = statFs.getBlockSize();// 每块存储块的大小		int totalSize = blockCount * size;// 总存储量		int availableSize = availableBlocks * size;// 可用容量		String phoneCapacity = Integer.toString(availableSize / 1024 / 1024)				+ "MB/" + Integer.toString(totalSize / 1024 / 1024) + "MB";		return phoneCapacity;	}	// 获取sdcard容量信息	public String sdcardCapacity() {		// 获取sdcard信息		File sdData = Environment.getExternalStorageDirectory();		StatFs sdStatFs = new StatFs(sdData.getPath());		int sdAvailableBlocks = sdStatFs.getAvailableBlocks();// 可用存储块的数量		int sdBlockcount = sdStatFs.getBlockCount();// 总存储块的数量		int sdSize = sdStatFs.getBlockSize();// 每块存储块的大小		int sdTotalSize = sdBlockcount * sdSize;		int sdAvailableSize = sdAvailableBlocks * sdSize;		String sdcardCapacity = Integer.toString(sdAvailableSize / 1024 / 1024)				+ "MB/" + Integer.toString(sdTotalSize / 1024 / 1024) + "MB";		return sdcardCapacity;	}

?

  相关解决方案