手机菜单:setting->apps->running apps里面看到的 mtk平台可用内存是如何计算的?


wKioL1mtHkvj3-lbAAPK0EaiX-U840.png-wh_50



[解决方法]


mtk平台计算方法请参考

:RunningProcessView.java(/alps/packages/apps/settings/src/com/android/set

ting/applications)里面的void refreshUi(boolean dataChanged)接口:


1、首先获取 /proc/meminfo信息


2、availMem = mMemInfoReader.getFreeSize() +mMemInfoReader.getCachedSize()- SECONDARY_SERVER_MEM; (因为不同平台,不同配置SECONDARY_SERVER_MEM会不同

,如果想确定该值具体大小,建议您在这边自行加log打印该值)


3、 mLastAvailMemory = availMem;long freeMem = mLastAvailMemory + mLastBackgroundProcessMemory;


4、freeMem即为可用内存,已用内存即为meminfo.total - freeMem

所以,这里会包含background process占据的内存


转自×××论坛