首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Leakcanary 详解

2.源码分析 我们在build.gradle文件中加入Leakcanary依赖库: debugImplementation 'com.squareup.leakcanary:leakcanary-android...:1.6.3' LeakCanary的使用从LeakCanary.install(this)开始, 下面我们从入口开始分析: //LeakCanary.java /** * Creates...排除可以忽略的泄漏路径 LeakCanaryInternals.setEnabledAsync(context, DisplayLeakActivity.class, true); 这行代码主要是为了开启LeakCanary...LeakCanary是这么做的:onDestroy以后,一旦主线程空闲下来,延时5秒执行一个任务:先判断Activity有没有被回收?...否则, LeakCanary主动触发一次gc,再进行以上两个步骤,如果发现这个Activity还没有被回收,就认为这个Activity很有可能泄漏了,并dump出当前的内存文件供之后进行分析。

29340

内存泄露分析工具:LeakCanary 原理分析

内存泄露是Android性能优化的重要内容,而Leakcanary是发现和分析内存问题的常用工具。本篇文章就对LeakCanary的原理进行分析,希望能帮助到你。...https://github.com/KwaiAppTeam/KOOM 3.Leakcanary定制 利用对 leakcanary 的定制,并将泄漏 trace 上报到业务 server 中 三、Leakcanary...'com.squareup.leakcanary:leakcanary-android:2.7' 或者 debugImplementation 'com.squareup.leakcanary:leakcanary-android-process...:leakcanary 中 五、Leakcanary启动时机 早期版本需要在应用Application的onCreate中处理Leakcanary的初始化,新版本中为了降低接入成本, 将Leakcanary...初始化 AppWatcherInstaller.onCreate调用Leakcanary的初始化 /** * contentProvider 创建时开始初始化Leakcanary */

2.4K40
领券