前言:
  近阶段都在探索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性能测试-内存的更多相关文章

  1. android性能测试内存泄漏

    1.什么是内存泄漏?     适用于该系统的内存使用内存泄漏,未回复(释放),该内存可以没有事业,也不能被其他人使用使用自己. 2.出有什么差别?    内存泄漏是分配出去的内存无法回收.    内存 ...

  2. Android性能测试--内存

    前言: 近阶段都在探索android性能测试方面的东西,其中一个很重要的指标就是内存.对于内存,主要是一些gc是不是及时,或者说一些引用有没有及时释放,有没有导致oom或者内存持续增加导致卡顿,有没有 ...

  3. 腾讯优测优分享 | Android性能测试工具化实现

    腾讯优测专业的移动云测试平台,自动化测试提供性能测试数据,云真机实时输出性能数据,让测试更简单! 1.Android性能测试介绍 提到Android性能测试,我们总免不了俗地要首先介绍下Android ...

  4. Android性能测试工具(一)之Emmagee

    Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...

  5. Android性能测试

    FPS和流畅度 FPS 1.dumpsys SurfaceFlinger –latency shell 脚本通过 dumpsys SurfaceFlinger --latency 数据计算 FPS 和 ...

  6. 【腾讯开源】Android性能测试工具APT使用指南

    [腾讯开源]Android性能测试工具APT使用指南 2014-04-23 09:58 CSDN CODE 作者 CSDN CODE 17 7833 腾讯 apt 安卓 性能测试 开源 我们近日对腾讯 ...

  7. Android性能测试——Allocation Tracker(Device Monitor)

    Android性能测试--Allocation Tracker(Device Monitor) Allocation Tracker 能做什么? 追踪内存分配信息,按顺序排列,这样我们就能清晰看出来某 ...

  8. Android 性能测试——Heap Viewer 工具

    Android 性能测试--Heap Viewer 工具 Heap Viewer能做什么? 实时查看App分配的内存大小和空闲内存大小 发现Memory Leaks Heap Viewer使用条件 5 ...

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

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

随机推荐

  1. AWS安装

    curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" sudo python get-pip. ...

  2. 「小程序JAVA实战」小程序开源搜索组件(53)

    转自:https://idig8.com/2018/09/22/xiaochengxujavashizhanxiaochengxukaiyuansousuozujian52/ 上次说了可以在视频中通过 ...

  3. 搜索框请输入关键字 onfocus 和 onblur

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. SQLITE3 使用总结(转)

    前序: Sqlite3 的确很好用.小巧.速度快.但是因为非微软的产品,帮助文档总觉得不够.这些天再次研究它,又有一些收获,这里把我对 sqlite3 的研究列出来,以备忘记. 这里要注明,我是一个跨 ...

  5. Symfony 2.0 认识Request, Response, Session, Cookie

    在上一节中,我们提到了如何创建一个Bunlde 并且在默认控制器中添加一些方法.如果有参照之前的说法进行的话,读者很有可能会被提示说 返回的Response对象不能为空.好啦,我们就来研究一下,怎么从 ...

  6. Java中的几种设计模式

    如果从事JAVA相关的开发,都不可避免的要用到抽象和封装,这是JAVA的一个特点,同时也是每个开发者必须掌握的,JAVA是这样,Android更是如此.而设计模式就是告诉我们应该如何写出高效且更具应用 ...

  7. leetcode: Longest Valid Parentheses分析和实现

    题目大意:给出一个只包含字符'('和')'的字符串S,求最长有效括号序列的长度. 很有趣的题目,有助于我们对这种人类自身制定的规则的深入理解,可能我们大多数人都从没有真正理解过怎样一个括号序列是有效的 ...

  8. zookeeper的ZAB协议

    ZAB协议概述 ZooKeeper并没有完全采用Paxos算法,而是使用了一种称为ZooKeeper Atomic Broadcast(ZAB,zookeeper原子消息广播协议)的协议作为其数据一致 ...

  9. 【美食技术】家庭自制DIY鸡蛋饼和疙瘩汤早餐视频教程

    鸡蛋饼制作方法 食材准备面粉 150g鸡蛋饼  鸡蛋饼鸡蛋 2个盐 适量水 适量(约300ml)油 20g荵花适量也可根据自己喜好准备一些调味料. 做法 鸡蛋饼是一种家常点心,做法很多,这里提供3种. ...

  10. PostgreSQL CPU满(100%)性能分析及优化

    业务场景:大批量更新时,数据库长时间CPU占用超过90,影响其他正常业务流程,参考阿里云上的一篇文章:https://help.aliyun.com/knowledge_detail/43562.ht ...