备注:Android Studio的Enable ADB Integration勾选(Tools/Android下)。

Memory Monitor面板

重点来看C区域,横坐标记录从采集开始点到目前已经过去的时间,纵坐标是分配给App使用的内存总量[Allocated+Free],蓝色区域表示已分配[Allocated]使用的的,灰色区域表示空闲[Free]未使用的。在坐标轴的右边可以看见具体数值。

Memory Monitor可以发现的问题

Memory Monitor工具为监控工具,是一种发现型或者说监控性质的工具,比如医生的四大技能[望闻问切],[望]是第一步。这里的Memory Monitor就是一种[望]的工具,目前我主要用它来看下面几个内存问题:
1.发现内存抖动的场景
2.发现大内存对象分配的场景
3.发现内存不断增长的场景
4.确定卡顿问题是否因为执行了GC操作

案例分析

上面的第一段标记显示内存突然增加了7M,我们也能看的很清楚,所以这个点我们要去定位了一下问题在哪里,是Bitmap还是什么原因造成的,第二段标记是内存抖动,很明显在很短的时间了发生了多次的内存分配和释放。而且在发生内存抖动的时候,也能感觉到App的卡顿,可以看出来是由于执行了GC操作造成的。
内存的不断增加通过Memory monitor很容易看出来,蓝色的曲线是一路高歌猛进的,一看便知。

关于内存泄漏的问题

内存分析界面:

内存分析结果:

通过Android Studio自带的界面,查看内存泄露还不是很智能,我们可以借助第三方工具,常见的工具就是MAT了,下载地址 http://eclipse.org/mat/downloads.php。MAT并不会准确地告诉我们哪里发生了内存泄漏,而是会提供一大堆的数据和线索,我们需要自己去分析这些数据来去判断到底是不是真的发生了内存泄漏。

内存泄露也可以使用android monitor device来检测。

追踪内存分配

如果我们想了解内存分配更详细的情况,可以使用Allocation Traker来查看内存到底被什么占用了。

点一下是追踪, 再点一下是停止追踪, 停止追踪后 .alloc文件会自动打开,打开后界面如下:

当你想查看某个方法的源码时,右键选择的方法,点击Jump to source就可以了

Allocation Traker的详细介绍:https://testerhome.com/topics/3457

转载自:https://testerhome.com/topics/3402

http://www.jianshu.com/p/216b03c22bb8

Android 性能专项之 Memory Monitor 工具-memery相关推荐

  1. Android性能专项测试之GPU Monitor

    Testing Display Performance Speed up your app GPU Monitor能做什么? 分析GPU的性能,实时查看绘制每一帧所花费的时间 GPU Monitor使 ...

  2. Android性能专项测试之Heap Viewer工具

    参考文章:Heap Viewer Android 内存监测工具 DDMS –> Heap 使用DDMS中的内存监测工具Heap来优化内存 Heap Viewer能做什么? 实时查看App分配的内 ...

  3. android专项测试 方案,Android性能专项测试.pdf

    目录 前言 battery-historian试用 MemoryMonitor工具 HeapViewer工具 AllocationTracker(DeviceMonitor) AllocationTr ...

  4. Android 性能测试——Memory Monitor 工具

    Android 性能测试--Memory Monitor 工具 Memory Monitor能做什么? 实时查看App的内存分配情况 快速判断App是否由于GC操作造成卡顿 快速判断App的Crash ...

  5. lua性能优化之memory monitor

    lua性能优化之memory monitor https://blog.csdn.net/zjz520yy/article/details/79777392 准备工作: 1.在编写mm库前必须对lua ...

  6. Android性能专项测试之Batterystats

    Batterystats & Battery Historian Walkthrough Battery Historian Charts Android应用的耗电量统计 Supplicant ...

  7. Android系统性能优化(54)---Android性能分析专题

    Android性能分析专题 1.  背景:Android App优化, 要怎么做? 2.  Android App优化之性能分析工具 3.  Android App优化之提升你的App启动速度之理论基 ...

  8. Android 性能监测工具,优化内存、卡顿、耗电、APK的方法

    导语     安卓大军浩浩荡荡,发展已近十个年头,技术优化月新日异,如今 Android 9.0 代号P  都发布了,Android系统性能已经非常流畅了.但是,到了各大厂商手里,改源码自定系统,使得 ...

  9. 抖音 Android 性能优化:新一代全能型性能分析工具 Rhea!

    本文选自「抖音 Android 性能优化」系列文章. 「抖音 Android 性能优化」系列文章是由抖音 Android 基础技术部门技术专家倾力打造的技术干货内容,和大家分享基础技术团队在打造极致用 ...

  10. 抖音 Android 性能优化系列:新一代全能型性能分析工具 Rhea

    本文选自「抖音 Android 性能优化」系列文章. 「抖音 Android 性能优化」系列文章是由抖音 Android 基础技术部门技术专家倾力打造的技术干货内容,和大家分享基础技术团队在打造极致用 ...

最新文章

  1. Xilinx的FPGA命名规则
  2. 【MATLAB统计分析与应用100例】案例009:创建一个RandStream类对象,调用其randn方法生成标准正态分布随机数
  3. python怎么执行程序_小鹅通视频怎么下载?用python实现小鹅通视频下载(二)
  4. Java日期格式化SimpleDateFormat
  5. printf 指针地址_指针搞都不懂,好意思说自己会C语言?
  6. 【网络编程】——windows socket 编程
  7. python数据结构不常用的方法(哈哈,其实是常用的)
  8. 我的天!你竟然没有在SpringBoot中使用过异步请求和异步调用...
  9. 《Java程序性能优化》、让你的Java程序更快、更稳定(PDF篇)
  10. 从CSV和VCF文件中获取联系人信息
  11. 手机图形计算器matlab,图形计算器Mathlab pro版
  12. 谷歌翻译api_解救科研民工!史上最强大的翻译神器,助你日读10篇不是梦~~
  13. 这27个电源符号,还傻傻分不清楚?
  14. 流量压力折射移动互联网困局
  15. android手势第一次设置密码_android实现手势密码
  16. 软件环境:安装报Error opening file for writing
  17. 文件操作的实例——下载并合并流式视频文件
  18. Maven ArtifactDescriptorException: Failed to read artifact descriptor for com.sun.mail 异常
  19. 嵌入式主板上使用的插针式加密锁
  20. Stata:异质性空间自回归模型(HSAR)-hetsar

热门文章

  1. BlowFish算法Java实现
  2. 64位系统和32位系统区别
  3. Android仿自如客APP裸眼3D效果
  4. 金色传说:SAP-FICO-COPA:创建销售订单时,获利能力段不自动带出,报错消息号KE0C133:特性值 2720000100000001对于特性 EXTWG 不存在 (外部物料组)
  5. linux基本防护 /病毒检测
  6. linux带密码解压密码,linux下解压有密码的rar压缩包
  7. Java常用开源框架
  8. Linux#Shell#if [ $# -ne 1 ];then 是什么意思?
  9. 集成 rootbeer 和 小米mix2s Root 流程
  10. C/C++中绝对值函数