今天因为项目要加个功能,所以去了解了下这个包,但中文资料实在甚少。无奈找些英文资料读读。

getTotalPrivateDirty()就是获得自己进程所独占的内存

getTotalPss()意思就是假如有A,B,C,D,E 5个进程共享一片10kb的内存,A,B,F 3个进程又另外共享了30kb的内存,那么进程A调用这个函数返回就是10/5+30/3=12

所以理论上只要监视getTotalPrivateDirty()就能监视自己进程的内存变化

最后附上代码

public void getThisProcessMemeryInfo() {         int pid = android.os.Process.myPid();         android.os.Debug.MemoryInfo[] memoryInfoArray = activityManager.getProcessMemoryInfo(new int[] {pid});         Log.d(TAG, "本应用当前使用了" + (float)memoryInfoArray[0].getTotalPrivateDirty() / 1024 + "mb的内存");     }

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐