Android性能测试-内存
前言:
近阶段都在探索android性能测试方面的东西,其中一个很重要的指标就是内存。对于内存,主要是一些gc是不是及时,或者说一些引用有没有及时释放,有没有导致oom或者内存持续增加导致卡顿,有没有大规模的内存抖动。近期项目由于个别模块大改,所以也就想把性能测试的东西在实际项目中实践进去,本文就是针对实践过程进行一下分享。
Memory Monitor:
Memory Monitor是android studio自带的一个非常好用的一个检测内存变化的工具,他能实时监控针对于某个进程的内存变化,帮助我们来判断内存是否及时释放,以及carsh是否超出了内存阀值。当然你也可以手动进行gc,看对象是否有得到释放。

这里是针对pris云阅读thread所进行的实时内存监控,通过一些列侧滑切换资讯正文后内存发生的变化,可以看到内存持续上升,且返回首页后仍没有明显下降,那么这里的确是出现了一系列问题,是应该关注的内存的问题。
Memory Monitor中dump java heap,能够dump一段时间内的.hprof文件来进行对象分析,看看是什么对象占用了大量内存

Memory Monitor中start allocation tracking 可以手机alloc文件,其中强大的图标数据,反应了一些线程的具体内存占用情况,是一个很好的分析工具,在使用Memory Monitor过程中可以具体使用Allocation Tracker来对thread进行内存分析,分析哪些activity其中对象的占用内存情况。

LeakCanary:
LeakCanary是一个开源的内存检测工具,之前我也有一篇博文具体介绍LeakCanary的具体使用。想了解的可以查看:Android内存泄漏检测-LeakCanary
借助LeakCanary可以很好的反馈测试过程中的内存泄漏情况,以助于排查一些对象没有及时释放导致oom的情况。
总结:到此,我介绍了最近一段时间对于android项目内存项目的具体实践情况,也希望有朋友有经验的可以多多指导交流。
Android性能测试-内存的更多相关文章
- android性能测试内存泄漏
1.什么是内存泄漏? 适用于该系统的内存使用内存泄漏,未回复(释放),该内存可以没有事业,也不能被其他人使用使用自己. 2.出有什么差别? 内存泄漏是分配出去的内存无法回收. 内存 ...
- Android性能测试--内存
前言: 近阶段都在探索android性能测试方面的东西,其中一个很重要的指标就是内存.对于内存,主要是一些gc是不是及时,或者说一些引用有没有及时释放,有没有导致oom或者内存持续增加导致卡顿,有没有 ...
- 腾讯优测优分享 | Android性能测试工具化实现
腾讯优测专业的移动云测试平台,自动化测试提供性能测试数据,云真机实时输出性能数据,让测试更简单! 1.Android性能测试介绍 提到Android性能测试,我们总免不了俗地要首先介绍下Android ...
- Android性能测试工具(一)之Emmagee
Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...
- Android性能测试
FPS和流畅度 FPS 1.dumpsys SurfaceFlinger –latency shell 脚本通过 dumpsys SurfaceFlinger --latency 数据计算 FPS 和 ...
- 【腾讯开源】Android性能测试工具APT使用指南
[腾讯开源]Android性能测试工具APT使用指南 2014-04-23 09:58 CSDN CODE 作者 CSDN CODE 17 7833 腾讯 apt 安卓 性能测试 开源 我们近日对腾讯 ...
- Android性能测试——Allocation Tracker(Device Monitor)
Android性能测试--Allocation Tracker(Device Monitor) Allocation Tracker 能做什么? 追踪内存分配信息,按顺序排列,这样我们就能清晰看出来某 ...
- Android 性能测试——Heap Viewer 工具
Android 性能测试--Heap Viewer 工具 Heap Viewer能做什么? 实时查看App分配的内存大小和空闲内存大小 发现Memory Leaks Heap Viewer使用条件 5 ...
- Android 性能测试——Memory Monitor 工具
Android 性能测试--Memory Monitor 工具 Memory Monitor能做什么? 实时查看App的内存分配情况 快速判断App是否由于GC操作造成卡顿 快速判断App的Crash ...
随机推荐
- notepad++ 行首行尾添加字符
有一次要处理SQL,拿到了脚本.但是要将其写入java 代码中,要在行首和行尾添加上引号.利用notepad++进行编辑. $表示行尾,^表示行首. 如上图,就这样.很高效. 如果只是在行尾添加字符, ...
- “MSDTC 事务的导入失败: Result Code = 0x8004d00e。
今天搞数据库移植,也把分布式程序移植了一下,一直报上面的错误,差点要重装了 %>_<%,网上看了几篇文章偶然间用DPCPING工具测试了下连接,发现不行.想到host文件的配置,发现其中 ...
- LDa 通俗理解
LDA理解以及源码分析(一) http://blog.csdn.net/pirage/article/details/50239125 LDA在主题建模中的应用,需要知道以下几点: 文档集中的word ...
- 非root用户使用1024以下端口
如果你有一个最新的内核,确实有可能使用它作为非root用户启动服务,但绑定低端口.最简单有效的办法是: #setcap 'cap_net_bind_service=+ep' /path/to/pr ...
- Ubuntu-Tensorflow 程序结束掉GPU显存没有释放的问题
笔者在ubuntu上跑Tensorflow的程序的时候,中途使用了Win+C键结束了程序的进行,但是GPU的显存却显示没有释放,一直处于被占用状态. 使用命令 nvidia-smi 显示如下 两个GP ...
- 【hdu4347】The Closest M Points 【KD树模板】
题意 一个k维空间,给出n个点的坐标,给出t个询问,每个询问给出一个点的坐标和一个m.对于每个询问找出跟这个点最接近的m个点 分析 kd树的模板题. #include <cstdio> # ...
- 13.Roman to Integer (HashTable)
Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 t ...
- Linux基石【第四篇】基本Linux命令
Linux 系统上一切皆文件 命令: pwd -- 查看当前目录 / 代表根目录 clear -- 清屏命令 cd(change directory) -- 切换目录 cd / -- 切换到根目录 ...
- Python 入门学习(壹)上机时间提醒
基于 Udacity 的 Python 入门课程 Programming Foundations with Python 基于 Python 2.7 控制台版本 思路 Project 1 是一个时间提 ...
- OGNL特殊符号的使用
---------------------siwuxie095 # 的使用 1.使用 # 获取 context 中的数据 「值栈分为 root 和 context 两部分」 2.如:向 Request ...