Android获得所有可用的存储设备

时间:2011-11-15 08:46:10

标签: android android-sdcard

是否有任何功能/方法可以使用他们的名字检测手机的各种不同存储空间。我的意思是如果您的设备上有多个可用的内部/外部存储,则检测所有内部/外部存储。以及如何检测是否有可用的SD卡?

提前致谢!

2 个答案:

答案 0 :(得分:4)

我不知道其他类型的存储设备,我只知道Android的内部存储和外部存储设备。

现在可以查看外部存储空间,例如

public static boolean isSdPresent() {

return android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED);

}

return type boolean(true->available,false->NA).

对于内部存储,(内部存储始终保持(存在),因此无需检查),就像这样,

File path = Environment.getDataDirectory();

现在,在两种情况下都要检查可用的可用内存和使用内存,

StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
return Formatter.formatFileSize(this, availableBlocks * blockSize);

答案 1 :(得分:1)

试试这个..

public static boolean isSdCardPresent() {

        return android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);

        }