据我所知,Android 上有:
- 应用程序和缓存的内部存储器
- 某些手机上的内置 SD 卡(不可拆卸)
- 用于存储音乐和照片的外部 SD 卡(可拆卸)
如何通过检查它们是否存在来获取每个手机的总数和可用数量(某些手机没有内部 SD 卡)
Thanks
以下是获取内部存储大小的方法:
StatFs statFs = new StatFs(Environment.getRootDirectory().getAbsolutePath());
long blockSize = statFs.getBlockSize();
long totalSize = statFs.getBlockCount()*blockSize;
long availableSize = statFs.getAvailableBlocks()*blockSize;
long freeSize = statFs.getFreeBlocks()*blockSize;
以下是获取外部存储大小(SD 卡大小)的方法:
StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getAbsolutePath());
long blockSize = statFs.getBlockSize();
long totalSize = statFs.getBlockCount()*blockSize;
long availableSize = statFs.getAvailableBlocks()*blockSize;
long freeSize = statFs.getFreeBlocks()*blockSize;
简短的笔记
空闲块:
区块总数
文件系统上免费,包括
保留块(不是
可用于正常应用程序)。
可用块:
空闲的块数
文件系统并可用于
应用程序。
以下是检测SD卡是否挂载的方法:
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state))
{
// We can read and write the media
}
else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state))
{
// We can only read the media
}
else
{
// No external media
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)