作者:浪子一品香_938 | 来源:互联网 | 2023-05-25 10:54
在我正在研究的应用程序中调查RAM使用情况时,我一直在Android Studio中使用Memory Monitor工具(可以通过工具> Android>内存监视器在Android Studio中访问).我注意到内存监视器中报告的应用程序的RAM使用率总是远低于查看设备的RAM使用情况(可以通过转到设置>应用程序>运行来访问).正如您在下面的屏幕截图中看到的,Memory Monitor报告大约18MB的RAM使用率(如果包含可用空间,则为23MB),但该设备报告的是43MB.
为什么差异也比另一个更准确?
1> P.T...:
我怀疑内存监视工具正在与dalvik虚拟机讨论Java代码所做的堆分配,而设备管理器正在显示整个进程用于内存的内容.因此,第一个不包括虚拟机本身(或其文本和库)使用的开销或内存,或任何堆外分配(有时本机代码可以分配VM不直接可见的内存).
请参阅https://developer.android.com/tools/debugging/debugging-memory.html#ViewingAllocations并尝试运行命令:
adb shell dumpsys meminfo
更准确地分解应用程序的运行时内存使用情况.