android 如何分析应用的内存(十六)——使用AS查看Android堆
在前面,先介绍了如何使用jdb和VS code查看应用栈相关内容。
本文将介绍,如何查看堆中的内容。大概有:
- 堆中的对象,有哪些
- 堆中的对象,由谁分配
- 堆中的对象,引用关系是怎么
堆中的对象有哪些,以及他们的引用关系——使用堆转储
要查看当前堆中的对象,需要使用工具将堆数据dump出来。
接下来,我们使用Android studio自带的memory profiler进行操作。
第一步:打开Android profiler
在Android Studio中,可以按照如下的步骤,打开memory profiler
在上图中,出现了两个选择,分别解释如下:
- profile xxx with low overhead:性能分析器只会启用cpu性能分析器和
内存分析器,在内存分析器中,只有Record native allocations为启用
状态(即,录制native分配的功能为启用状态) - profile xxx with complete data:启用所有的分析器,包括cpu分析器,
内存分析器