是否可以通过Android SDK获得Android设备(而不是SD CARD)上的可用内存量?如果是这样,怎么办?
3 回答
弑天下
TA贡献1818条经验 获得超8个赞
还检查此线程。这里有很多信息。
google一下,这是解决方案(位于android git)
File path = Environment.getDataDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSize();
long availableBlocks = stat.getAvailableBlocks();
return Formatter.formatFileSize(this, availableBlocks * blockSize);
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
看起来StatFs该类可能是您需要使用的类。我不确定将哪个路径视为设备的根目录,但是我相信无论目录如何,只要它是内部存储的一部分,结果都是相同的。这样的事情可能会起作用:
StatFs stats = new StatFs("/data");
int availableBlocks = stats.getAvailableBlocks();
int blockSizeInBytes = stats.getBlockSize();
int freeSpaceInBytes = availableBlocks * blockSizeInBytes;
如果没有其他问题,StatFs类应该为您提供一个良好的起点。
- 3 回答
- 0 关注
- 508 浏览
添加回答
举报
0/150
提交
取消