標籤:
記憶體狀態擷取類:
public class MemoryUtils {
public static final int TotalMemory = 0;
public static final int AvailableMemory = 1;
public static final int freeMemory = 2;
public static String GetMemoryinfo(Context context,File pathFile,int MemoryType) {
StatFs statFs=new StatFs(pathFile.getPath());
long blockSize=statFs.getBlockSize();
switch (MemoryType) {
case TotalMemory:
returnFormatter.formatFileSize(context, statFs.getBlockCount()*blockSize);
case AvailableMemory:
returnFormatter.formatFileSize(context, statFs.getAvailableBlocks()*blockSize);
case freeMemory:
returnFormatter.formatFileSize(context, statFs.getFreeBlocks()*blockSize);
default:
return"0";
}
}
}
調用:
public void sdCartClick(View view) {
TextView textView=(TextView)findViewById(R.id.tvinfo);
File file=Environment.getExternalStorageDirectory();
String textString="總記憶體:"+MemoryUtils.GetMemoryinfo(this,file , MemoryUtils.TotalMemory);
textString+="|可用記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.AvailableMemory);
textString+="|空閑記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.freeMemory);
textView.setText(textString);
}
public void PhoneDataClick(View view) {
File file=Environment.getDataDirectory();
TextView textView=(TextView)findViewById(R.id.tvinfo);
String textString="總記憶體:"+MemoryUtils.GetMemoryinfo(this,file , MemoryUtils.TotalMemory);
textString+="|可用記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.AvailableMemory);
textString+="|空閑記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.freeMemory);
textView.setText(textString);
}
public void DownLoadCacheClick(View view) {
TextView textView=(TextView)findViewById(R.id.tvinfo);
File file=Environment.getDownloadCacheDirectory();
String textString="總記憶體:"+MemoryUtils.GetMemoryinfo(this,file , MemoryUtils.TotalMemory);
textString+="|可用記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.AvailableMemory);
textString+="|空閑記憶體:"+MemoryUtils.GetMemoryinfo(this,file, MemoryUtils.freeMemory);
textView.setText(textString);
}
安卓擷取手機記憶體,SD卡記憶體使用量狀態的方法