leakcanary的简单介绍

举报
liuzhen007 发表于 2021/05/27 18:20:16 2021/05/27
【摘要】 leakcanary是一个监测android和java内存泄漏的工具。他能够在不影响程序正常运行的情况下,动态收集程序存在的内存泄漏问题。小的内存泄露可能不会有直接导致程序崩溃,但是量变终会引发质变,从而造成内存溢出,程序崩溃。leakcanary因为功能强大,而且部署简单,所以深受大家的喜爱。 接下来简单介绍怎么将leakcanary集成到我们自己的程序中去,总共分两步:...

leakcanary是一个监测android和java内存泄漏的工具。他能够在不影响程序正常运行的情况下,动态收集程序存在的内存泄漏问题。小的内存泄露可能不会有直接导致程序崩溃,但是量变终会引发质变,从而造成内存溢出,程序崩溃。leakcanary因为功能强大,而且部署简单,所以深受大家的喜爱。

接下来简单介绍怎么将leakcanary集成到我们自己的程序中去,总共分两步:

第一步,引入依赖库。在我们的工程的build.gradle脚本中添加如下语句:


  
  1. dependencies {
  2. debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.3'
  3. releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.3'
  4. debugImplementation 'com.squareup.leakcanary:leakcanary-support-fragment:1.6.3'
  5. }

第二步,在程序中启动leakcanary。在程序的主入口中添加如下代码:


  
  1. if (LeakCanary.isInAnalyzerProcess(this)) {
  2. return;
  3. }
  4. LeakCanary.install(this);

举一个例子,请参考:


  
  1. public class DemoApplication extends Application {
  2. @Override public void onCreate() {
  3. super.onCreate();
  4. if (LeakCanary.isInAnalyzerProcess(this)) {
  5. return;
  6. }
  7. LeakCanary.install(this);
  8. //程序的正常代码。。。
  9. }
  10. }

到这里,leakcanary就部署好了,是不是非常简单。这样运行程序后,就会同时运行leakcanary,退出程序后,手机桌面就会自动生成一个leakcanary的图标。这时,我们点开图标,如果存在内存泄露,里边就会出现相关的提示信息。

这里给个截图:

项目参考:https://github.com/square/leakcanary

 

文章来源: liuzhen.blog.csdn.net,作者:Data-Mining,版权归原作者所有,如需转载,请联系作者。

原文链接:liuzhen.blog.csdn.net/article/details/88746879

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。