안드로이드 기기 저장공간 가져오기
전체 공간 가져오기
@SuppressWarnings("deprecation")
public static String getTotalInternalMemorySize() {
File path = Environment.getDataDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long totalBlocks = stat.getBlockCount();
return formatSize(totalBlocks * blockSize);
}
- 사용 가능 공간 가져오기
public static boolean externalMemoryAvailable() {
return android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);
}
@SuppressWarnings("deprecation")
public static String getAvailableExternalMemorySize() {
if (externalMemoryAvailable()) {
File path = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
return formatSize(availableBlocks * blockSize);
} else {
return null;
}
}
public static String formatSize(long size) {
String suffix = null;
if (size >= 1024) {
suffix = " KB";
size /= 1024;
if (size >= 1024) {
suffix = " MB";
size /= 1024;
}
}
StringBuilder resultBuffer = new StringBuilder(Long.toString(size));
int commaOffset = resultBuffer.length() - 3;
while (commaOffset > 0) {
resultBuffer.insert(commaOffset, ',');
commaOffset -= 3;
}
if (suffix != null) resultBuffer.append(suffix);
return resultBuffer.toString();
}
'Java > Android' 카테고리의 다른 글
77_안드로이드 스튜디오 단축키 (0) | 2017.09.29 |
---|---|
74_Android Error (0) | 2017.09.16 |
70_안드로이드 랜덤 비밀번호 생성 (0) | 2017.07.06 |
69_Button이 대문자로 나올 때 (0) | 2017.06.22 |
68_안드로이드 strings.xml 변수 설정 (0) | 2017.06.21 |