软件测试app内存溢出,检测APP内存溢出LeakCanary
名称
LeakCanary
语言
Android
平台
GitHub
作者
square
日常工作中开发APP,我们很多习惯不好的代码风格可能会带来内存溢出,内存溢出在每个APP多多少少都会出现,我们只要用对应的检测工具,然后检测后修改即可。今天给大家推荐内存溢出检测工具LeakCanary,将该工具集成到项目后,运行APP,如果出现内存溢出,则会在通知栏显示通知,并提醒内存溢出的位置,大大方便我们对APP内存溢出的检测。
使用方法:
1、在build.gradle添加依赖:
dependencies {
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.2'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.2'
}
2、在Application类添加如下初始化代码:
public class ExampleApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
if (LeakCanary.isInAnalyzerProcess(this)) {
// This process is dedicated to LeakCanary for heap analysis.
// You should not init your app in this process.
return;
}
LeakCanary.install(this);
// Normal app init code...
}
}
3、然后运行APP并测试,如果测试过程中出现内存溢出,会在通知栏显示Notification提示。
软件测试app内存溢出,检测APP内存溢出LeakCanary相关推荐
- Android 性能优化之内存泄漏检测以及内存优化(上)
在 Java 中,内存的分配是由程序完成的,而内存的释放则是由 Garbage Collecation(GC) 完成的,Java/Android 程序员不用像 C/C++ 程序员一样手动调用相关函数来 ...
- 转载浅谈MFC内存泄露检测及内存越界访问保护机制
2019独角兽企业重金招聘Python工程师标准>>> 本文所有代码均在VC2008下编译.调试.如果您使用的编译器不同,结果可能会有差别,但本文讲述的原理对于大部分编译器应该是相似 ...
- android内存泄漏检测,Android内存泄露检测之LeakCanary的使用
开始使用 目前为止最新的版本是2.3版本,相比于2.0之前的版本,2.0之后的版本在使用上简洁了很多,只需要在dependencies中加入LeakCanary的依赖即可.而且debugImpleme ...
- 精准 iOS 内存泄露检测工具
MLeaksFinder:精准 iOS 内存泄露检测工具 发表于 2016-02-22 | zepo | 23 Comments 背景 平常我们都会用 Instrument 的 Lea ...
- Android 内存泄漏检测开源库LeakCanary 研究
1. Android 内存空间不足会引发的问题 1.1 异常 1.2 卡顿 1.3 从 Java 堆内存超限这个问题开始 2. 内存优化着手点 2.1 检测 RAM usage 2.2 进程 2.3 ...
- OpenCV中的内存泄漏检测
转自:http://chaishushan.blog.163.com/blog/static/130192897200911685559809/ 内存泄漏时程序开发中经常遇到的问题. 而且出现内存泄漏 ...
- 软件测试app内存溢出,浅析软件测试人员如何对JVM进行内存溢出检测
一.什么是JVM,检测JVM的意义 JVM是java virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各 ...
- java 测试内存溢出_浅析软件测试人员如何对JVM进行内存溢出检测
一.什么是JVM,检测JVM的意义 JVM是java virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各 ...
- 利用VC检测程序内存溢出(转)
VisualC++没有默认启动内存泄露检测,即如果某段代码产生内存溢出也不会在"输出窗口"调试标签下输出内存溢出相关信息 (1)需要手工添加代码检测 #define _CRTDBG ...
最新文章
- js里父页面与子页面的相互调用
- 我心中的核心组件(可插拔的AOP)~分布式Session组件
- 折叠屏来了,开发者们准备好了吗?
- 一个弱智问题, Ubuntu 中gedit 菜单栏在哪里?
- 茶苑机器人怎么看出来_小儿脑瘫怎么看出来?出现4个异常,该早点去看医生...
- PHP+SQLite3简约网址导航、书签管理器网站源码
- jieba结巴分词--关键词抽取_初学者 | 知否?知否?一文学会Jieba使用方法
- 两组数据的偏差怎么算_数据随机性,如何利用游程检验来检测?
- ISelectionMgr Interface
- OSPF高等特性——Forwarding Address
- 计算机无法进入测试页面,为什么打印机无法打印测试页?介绍具体的多种原因及解决方法...
- phpadmin的安装教程
- 信息与计算科学跨考计算机,信息与计算科学考研的方向介绍
- Ubuntu16_18建立返回桌面、显示桌面的快捷图标的特殊方法
- 法国蓬皮杜中心天猫官方旗舰店开业;洲际集团旗下高端品牌voco全球开业及签约酒店数突破100家 | 美通企业日报...
- iPhone十二年了,多希望这是苹果的一个新轮回!
- 趣图:不就让手机壳变个色有那么难么?
- LabVIEW做CRC校验CRC-16/CCITT-FALSE算法
- Android支付接入(二):移动游戏基地
- Invalid use of argument matchers
热门文章
- 本地电脑轻松部署GPT4(无需账号)!
- 虚拟机上网问题(设置NAT依然无法上网)
- C3P0连接池使用时报错java.lang.NoClassDefFoundError: com/mchange/v2/ser/Indirector
- ​详细教程:如何使用代理服务器进行网页抓取?
- 安卓开发网!Android社招最全面试题,大厂面试题汇总
- 鸡兔同笼 需求:今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
- 代码还原谷歌彩蛋小恐龙游戏(html+css+js)
- IOS开发-画饼图画柱状图
- poi简介与简单使用
- java中settimeout作用_关于setTimeout的妙用