获取进程占用内存

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fan380485838/article/details/80924716

   如何设置获取当前进程占用的内存大小

路径为:

/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);
                    }
                }
 
展开阅读全文

没有更多推荐了,返回首页