这个演示展示了Allocation Tracker工具在Android Studio中的基本使用方法和流程。

Allocation Tracker记录了一个app的内存分配,列出全部分配对象,用于分析他们调用堆栈。大小和分配代码周期。

它的优势:

  • 确定哪里有很多来至大致同样的回调堆栈,相似的对象类型。在非常短的时间内分配和回收。

  • 找到在你的代码中可能导致低效内存的地方。

在你使用Allocation Tracker之前,使用Memory Monitor工具分析你的代码。假设你看到在非常短的时间内有很多垃圾回收事件。使用Heap Viewver来确定候选对象类型。Allocation Tracker来确定在你的代码哪里发生。

预备条件

----------------------------------------------------------------------------------------

  • 一台打开开发人员选项的手机。

  • 应用程序代码。使用你自己的代码,或者Sunshine演示样例程序。

使用Allocation Tracker

----------------------------------------------------------------------------------------

Allocation Tracker记录了你的应用程序执行分析周期期间的每一个内存分配。你告诉Allocation Tracker開始记录和它的日志分配。知道你告诉它停止。

  1. 将你的手机连接到你的电脑。

  2. 在你的Android Studio中打开你的应用程序。构建源码,在你的设备或者模拟中执行它。

  3. 点击在你的Android Studion窗体底部的Androidbutton。

  4. 假设你使用Andorid Device Monitor。点击在Android DDMS工具栏的RECODERbutton(開始Allocation Tracking tooltip)。假设你使用Android Studion。在Memory Monitor工具栏的点击图标。

  5. 交互你的应用程序。

  6. 点击STOPbutton(同一个)(停止Allocation Tracking tooltip)。

图1.在Android DDMS中启动Allocation Tracker步骤

  1. 几秒之后。一个记录你的数据的窗格打开。注意分配日志记录在设备中,这个数据文件传输到电脑。分析这些信息。并展示。

  2. 表格中的窗格。

    • 每行代表一个内存分配事件。

    • 每列代表关于分配的信息,比如对象类型,线程和它的大小。

    • 每列能够移动,调整大小。

使用过滤器仅仅显示你的App的分配。

  1. 点击一个对象来查看它的完整堆栈。

图2.在Android DDMS中Allocation Tracker输出演示样例。

Android Developer:Allocation Tracker演示的更多相关文章

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

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

  2. 你不知道的Eclipse用法:使用Allocation tracker跟踪Android应用内存分配

    Android Tools中的DDMS带有一个很不错的跟踪内存分配的工具Allocation tracker.通过Alloction tracker,不仅知道分配了哪类对象,还可以知道在哪个线程.哪个 ...

  3. Android内存优化(二)解析Memory Monitor、Allocation Tracker和Heap Dump

    前言 要想做好内存优化工作,就要掌握两大部分的知识,一部分是知道并理解内存优化相关的原理,另一部分就是善于运用内存分析的工具.本篇就来介绍内存分析工具:Memory Monitor.Allocatio ...

  4. Android内存优化(四)解析Memory Monitor、Allocation Tracker和Heap Dump

    相关文章 Android性能优化系列 Java虚拟机系列 前言 要想做好内存优化工作,就要掌握两大部分的知识,一部分是知道并理解内存优化相关的原理,另一部分就是善于运用内存分析的工具.本篇就来介绍内存 ...

  5. Android 性能优化(23)*性能工具之「Heap Viewer, Memory Monitor, Allocation Tracker」Memory Profilers

    Memory Profilers In this document Memory Monitor Heap Viewer Allocation Tracker You should also read ...

  6. android--------性能优化之Allocation Tracker

    Allocation Tracker 能做什么? 追踪内存分配信息,按顺序排列,这样我们就能清晰看出来某一个操作的内存是如何一步一步分配出来的.比如在有内存抖动的可疑点,我们可以通过查看其内存分配轨迹 ...

  7. Android Developer:内存分析器

    Heap Viewer,Memory Monitor和Allocation Tracker是用来可视化你的app使用内存的补充工具. 使用Memory Monitor Tool来发现是否有不好的内存回 ...

  8. [转] This Android SDK requires Android Developer Toolkit version 23.0.0 or above

    问题描述: This Android SDK requires Android Developer Toolkit version 23.0.0 or above.  Current version ...

  9. !! Android developer 最新国内镜像

    Android developer 最新国内镜像: http://wear.techbrood.com, 包含Android最新文档以及Android Wear,Android TV,Android ...

随机推荐

  1. Leetcode37--->Sudoku Solver(填充数独)

    题目: 给定一个不完整的数独,要求填充好数独:最初给出的数独是有效的,且假设一定有答案: 举例: A sudoku puzzle... 解题思路: 该题与青蛙走迷宫问题很相似,都是用深度优先: 代码如 ...

  2. [小技巧]使用set对列表去重,并保持列表原来顺序

  3. DS博客作业06——图

    1.本周学习总结(0--2分) 1.思维导图 2.谈谈你对图结构的认识及学习体会. 这章学习了图,学习了图的两种存储结构:邻接矩阵和邻接表.这两种存储结构都用到了之前学c时学到的结构体,将结构体充分运 ...

  4. DS博客作业-05--树

    1.本周学习总结  1.1思维导图  1.2学习体会 1.课堂上的知识也很难听懂,打代码就更难听懂了,真的需要不断练习代码. 2.在学习本章的内容中,一开始只是理解了概念,在真正做题中,一点思路都没有 ...

  5. MySQL将内存用在了哪里

    本片文章参考官网讲述MySQL是如何分配内部内存,同时涉及到如何合适设的置内存分配以及如何监控内存的使用情况 官方文档 MySQL在启动时默认被分配给512MB RAM,可以通过设置相关内存参数对其进 ...

  6. python3 保存一个网页为html文件

    我使用的python版本为3.5.2. 最近租房子,恨透了中介,想绕过中介去租.结果发现豆瓣同城里有好多二房东,感觉人都还不错.但是豆瓣这里没有信息检索的功能,只能人工地看房子的地址,非常地不方便.所 ...

  7. java jstl标签

    转自:http://blog.csdn.net/liushuijinger/article/details/9143793 JSTL(JSP Standard Tag Library ,JSP标准标签 ...

  8. AC自动机详解 (P3808 模板)

    AC自动机笔记 0.0 前言 哇,好久之前就看了 KMP 和 Trie 树,但是似乎一直没看懂 AC自动机?? 今天灵光一闪,加上之前看到一些博客和视频,瞬间秒懂啊... 其实这个玩意还是蛮好理解的. ...

  9. java面试题之BIO、NIO、AIO的应用场景

    定义: 1.BIO:同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时,服务器就启动一个线程来处理,如果这个连接不处理任何事情会造成不必要的线程开销,可以通过线程池机制改善. 2.NI ...

  10. SpringBoot jackson传入List引起的坑

    一.jackson无法解析value为[]的json 当入参为{xxxx1:[1,2,3],xxxx2:[obj1,obj2,obj3]}时,springmvn controller接收入参写为Lon ...