要获取Android手机的存储空间大小,可以使用以下代码:
首先,确保你的AndroidManifest.xml文件中已经添加了外部存储的读取权限。
在你的Activity或者Fragment中,使用以下代码获取存储空间大小:
StatFs stat = new StatFs(Environment.getExternalStorageDirectory().getPath());
long blockSize = stat.getBlockSizeLong();
long totalSize = stat.getBlockCountLong() * blockSize;
这里,Environment.getExternalStorageDirectory().getPath()
返回外部存储的路径,StatFs
用于获取存储空间的统计信息。getBlockSizeLong()
方法用于获取每个存储块的大小,getBlockCountLong()
方法用于获取总的存储块数量。通过计算总的存储空间大小,你可以得到以字节为单位的值。
请注意,这段代码只能获取到外部存储的大小。如果你想要获取内部存储的大小,可以将getExternalStorageDirectory()
替换为getFilesDir()
或者getCacheDir()
。
要获取Android手机的存储空间大小,可以使用以下代码:
import android.os.Environment;
import android.os.StatFs;
// 获取手机存储空间大小
public class StorageUtils {
// 获取内部存储空间总大小
public static long getTotalInternalStorageSize() {
StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
long blockSize = statFs.getBlockSizeLong();
long totalBlocks = statFs.getBlockCountLong();
return totalBlocks * blockSize;
}
// 获取内部存储空间可用大小
public static long getAvailableInternalStorageSize() {
StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
long blockSize = statFs.getBlockSizeLong();
long availableBlocks = statFs.getAvailableBlocksLong();
return availableBlocks * blockSize;
}
// 获取SD卡存储空间总大小
public static long getTotalExternalStorageSize() {
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getPath());
long blockSize = statFs.getBlockSizeLong();
long totalBlocks = statFs.getBlockCountLong();
return totalBlocks * blockSize;
}
return 0;
}
// 获取SD卡存储空间可用大小
public static long getAvailableExternalStorageSize() {
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getPath());
long blockSize = statFs.getBlockSizeLong();
long availableBlocks = statFs.getAvailableBlocksLong();
return availableBlocks * blockSize;
}
return 0;
}
}
然后,你可以根据需要调用getTotalInternalStorageSize()
和getTotalExternalStorageSize()
等方法来获取相应的存储空间大小。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/140103.html