package com.per.test;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.ArrayList;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.ActivityManager.MemoryInfo;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
public class TestzzzActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Integer a = Integer.MAX_VALUE;
Log.d("test", "ss:" + a);
String s = getAvailMemory();
String s2 = getTotalMemory();
int total = getNumber(s2);
TextView tv = (TextView) findViewById(R.id.sel);
tv.setText("可用内存:" + s + ";总内存:" + total / 1024 + "MB");
}
/*
* 获得可用内存
*/
public String getAvailMemory() {
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
MemoryInfo mi = new MemoryInfo();
am.getMemoryInfo(mi);
Log.d("test", "可用内存:" + mi.availMem);
return android.text.format.Formatter.formatFileSize(this, mi.availMem);
}
/*
* 获得系统文件的内容第一行为总内存
*/
public String getTotalMemory() {
String str1 = "/proc/meminfo";// 系统内存信息文件
String str2 = null;
String str3;
ArrayList<String> arr = new ArrayList<String>();
try {
FileReader reader = new FileReader(str1);
BufferedReader buf = new BufferedReader(reader, 1024);
while (buf.read() != -1) {
str2 = buf.readLine();
arr.add(str2);
}
for (int i = 0; i < arr.size(); i++) {
Log.d("test", "line" + i + ":" + arr.get(i));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return arr.get(0);
}
public int getNumber(String str) {
int m = 0;
String s ="";
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i)) {
case '1':
s+='1';
break;
case '2':
s+='2';
break;
case '3':
s+='3';
break;
case '4':
s+='4';
break;
case '5':
s+='5';
break;
case '6':
s+='6';
break;
case '7':
s+='7';
break;
case '8':
s+='8';
break;
case '9':
s+='9';
break;
case '0':
s+='0';
break;
default:
break;
}
}
if(!"".equals(s)&&null!=s){
m = Integer.valueOf(s);
}
return m;
}
}