前言
最近在做地图相关业务的时候,发现进入导航的一瞬间系统特别卡,当时就是用的profiler工具分析出来是因为高德的SDK在进入导航的时候短时间内创建了大量的对象引起内存抖动。这次主要简单介绍Profiler关于分析内存的简单使用,可以分析内存泄漏或者观察应用以及引用的SDK创建了多少对象。
一、菜单介绍
下面是上图每个数字对应的简单的介绍
- 选择【MEMORY】进行内存分析
- 记录系统内存变化,可分析是否有内存泄漏
- 一段时间内C/C++的对象的使用数量
- 一段时间内Java/kotlin对象的使用数量
- 开始/暂停
- 内存变化区域
二、使用步骤
1.准备程序
主要是写一个最简单的mainActivity跳转到SecondActivity的程序,SecondActivity有内存泄漏且创建两个简单的对象
主要代码如下:
public class SecondActivity extends AppCompatActivity {
//内存泄漏的对象(内存泄漏分析使用)
private static Activity object1 = null;
// 观察的创建的对象(记录创建多少对象使用)
private Obs