App内存分析工具——LeakCanary

app的内存分析工具,一般是用来检测内存泄露,进而优化我们的代码,那么什么是内存泄露呢?当本该回收的内存由于某种原因没有被GC回收时,导致内存被无效数据使用而导致可用内存逐渐变小,内存泄露会导致内存消耗增加,大量的内存泄露就会最终导致OOM,通过ADB自带的工具,可以大概看出是否有内存泄露(例如meminfo不断增大),但是想要更进一步的分析内存,那就要亮剑了。这篇为大家介绍第一个工具:LeakCanary,开源大厂Square出品,必属精品。该工具相较于传统的工具,降低了使用难度,而且使用方便,效率极高。工具地址:https://github.com/square/leakcanary
我们经常在项目中遇到各种各样的OOM问题,比如setContentView()就能抛出OOM,让人匪夷所思,下面就详细介绍下如何集成、使用此工具,来解决这些OOM的问题。
第一步:在Gradle里配置依赖库
这里写图片描述
可以发现Gradle的强大的配置功能,使LeakCanary在Debug版本中正常工作,而在Release版本中完全不开启检测功能。
第二步:初始化LeakCanary
在应用的Application中,添加如下代码:
这里写图片描述
关于StrictMode请参看:http://blog.csdn.net/next_second/article/details/54316143
第三步:开始检测:编译App,然后在手机上跑起来,LeakCanary检测到内存泄露后会弹出提示,点击这个提示可以到查看存在内存泄露的地方。
这里写图片描述
点击某一项可查看具体信息:
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值