这个演示展示了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. 紫书第一章训练1 D -Message Decoding

    Some message encoding schemes require that an encoded message be sent in two parts. The first part, c ...

  2. C#技术点

    程序员的基本内功.操作系统,数据结构,网络协议,架构 mysql存储引擎,索引? 分布式技术一致性? 缓存系统/中间件技术/NoSql? 锁与线程切换? 排序,链表,hash_map?

  3. Etcd和ZooKeeper,究竟谁在watch的功能表现更好?

    ZooKeeper和Etcd的主要异同可以参考这篇文章,此外,Etcd的官网上也有对比表格(https://coreos.com/etcd/docs/latest/learning/why.html) ...

  4. webstorm自带debugger服务器

    打开webstorm->settings->Build,Execution,Deployment->Debugger->把端口Port改成8089或者其他80端口,按确定就可以 ...

  5. ubuntu14.04 安装 tensorflow9.0

    ubuntu14.04 安装 tensorflow9.0 文章目录 ubuntu14.04 安装 tensorflow9.0 安装pip(笔者的版本为9.0) 仅使用 CPU 的版本的tensorfl ...

  6. 微软2014实习生及秋令营技术类职位在线测试(题目1 : String reorder)

    题目1 : String reorder 时间限制:10000ms 单点时限:1000ms 内存限制:256MB Description For this question, your program ...

  7. es6模板语法使用上的一点问题

    var str = "test"; console.log(str); // test console.log(`str`) //str 这里的str是模板语法里面的,而不是变量s ...

  8. Xode 8 的那些坑

    刚发布完Xcode的8.0果断更新了,发现用起来非常容易闪退,关键是我编辑项目时默认使用Xcode8打开,导致我用Xcode7打开Xib是报错: This version does not suppo ...

  9. hdu 1558 线段相交+并查集路径压缩

    Segment set Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  10. Distinct Substrings(spoj 694)

    题意:要求不同子串的个数 /* 先求出height数组,不难看出height之和就是重复的字符串个数,用总的减去它就行了. */ #include<cstdio> #include< ...