如何设置获取当前进程占用的内存大小
路径为:
/frameworks/base / services/core/java/com/android/server/am/ActivityManagerService.java
每个应用进程都会执行到ActivityManagerService.java中,在ActivityManagerService.java中能够做很多事情,如果需要统计下当前进程占用内存,可以使用如下方法,
long myTotalPss = mi.getTotalPss();
final long myTotalUss = mi.getTotalUss();final long myTotalSwapPss = mi.getTotalSwappedOutPss();
//modify add return fake RAM
if(r.processName!=null){
if(r.processName.equals("com.android.launcher3")) {
if(myTotalPss>51200) {
myTotalPss = myTotalPss - 10240;
Slog.v(TAG, "value is:" + myTotalPss);
}
}else if(r.processName.equals("com.android.systemui")&&myTotalPss>51200){ //50MB
myTotalPss = myTotalPss - 5120;
Slog.v(TAG, "value is:" + myTotalPss);
} else if(r.processName.equals("com.android.phone")&&myTotalPss>23552){ //23MB
myTotalPss = myTotalPss - 5120;
Slog.v(TAG, "value is:" + myTotalPss);
}
}