你不知道的Eclipse用法:使用Allocation tracker跟踪Android应用内存分配
2013-07-05 09:23
387 查看
Android Tools中的DDMS带有一个很不错的跟踪内存分配的工具Allocation
tracker。通过Alloction tracker,不仅知道分配了哪类对象,还可以知道在哪个线程、哪个类、哪个文件的哪一行。
尽管在性能关键的代码路径上移除所有的内存分配操作不是必须的,甚至有时候是不可能的,但是Alloction tracker可以帮你识别代码中的一些重要问题。
举例来说,许多应用中发现的一个普遍错误:每次进行绘制都创建一个新的Paint对象。将Paint的创建移到一个实例区域里,是一个能极大提高程序性能的简单举措。
在Eclipse中安装和使用Allocation
tracker步骤
Eclipse安装Allocation tracker插件
Andorid开发环境的时候,默认将该工具包含到ADT插件中。所以不必有额外的安装。
启动Eclipse,切换到DDMS透视图(步骤同Heap)
将手机连接通过USB链接到电脑(步骤同Heap)
选中想要检检测的进程(步骤同Heap)
跟踪内存检查的信息
单击Allocation tracker标签,就会打开一个新的窗口,点击“Start
Tracing“按钮,然后让引用运行你想分析的代码。运行完毕后,点击”Get Allocations“按钮。
一个个一分配对象的列表就会出现在第一个表格中。单击表格中的任何一项,在表格二中就会出现导致内存分配的栈跟踪信息。
tracker。通过Alloction tracker,不仅知道分配了哪类对象,还可以知道在哪个线程、哪个类、哪个文件的哪一行。
尽管在性能关键的代码路径上移除所有的内存分配操作不是必须的,甚至有时候是不可能的,但是Alloction tracker可以帮你识别代码中的一些重要问题。
举例来说,许多应用中发现的一个普遍错误:每次进行绘制都创建一个新的Paint对象。将Paint的创建移到一个实例区域里,是一个能极大提高程序性能的简单举措。
在Eclipse中安装和使用Allocation
tracker步骤
Eclipse安装Allocation tracker插件
Andorid开发环境的时候,默认将该工具包含到ADT插件中。所以不必有额外的安装。
启动Eclipse,切换到DDMS透视图(步骤同Heap)
将手机连接通过USB链接到电脑(步骤同Heap)
选中想要检检测的进程(步骤同Heap)
跟踪内存检查的信息
单击Allocation tracker标签,就会打开一个新的窗口,点击“Start
Tracing“按钮,然后让引用运行你想分析的代码。运行完毕后,点击”Get Allocations“按钮。
一个个一分配对象的列表就会出现在第一个表格中。单击表格中的任何一项,在表格二中就会出现导致内存分配的栈跟踪信息。
相关文章推荐
- 你不知道的Eclipse用法:使用Allocation tracker跟踪Android应用内存分配
- eclipse 使用Allocation tracker跟踪Android应用内存分配
- 你不知道的Eclipse用法:使用Heap检测和分析Android应用内存
- 你不知道的Eclipse的用法:使用Eclipse查看Android源码
- 你不知道的Eclipse的用法:使用MAT分析Android的内存
- 你不知道的Eclipse的用法:使用MAT分析Android的内存
- 使用eclipse和gradle对Android应用进行批量打包
- 使用eclipse跟踪调试Android源码及其.classpath的作用分析
- 使用Android Studio + 基于Eclipse的MAT 对Android应用进行内存泄漏的分析和检测
- eclipse 使用Heap检测和分析Android应用内存
- 如何管理app的进程与内存分配,以及在Android开发应用的时候如何主动的减少内存的使用
- 你不知道的Eclipse用法:使用PMD预先检测错误
- Android EasyAR使用教程一 演示如何使用一个tracker同时跟踪多个目标
- 你不知道的Eclipse用法:使用Javadoc导出项目的API文档
- 【Android】AndroidStudio(Eclipse)如何使用天天模拟器进行调试apk应用。
- Android开发中使用eclipse中的DDMS对应用的内存检测
- 使用Eclipse开始第一个Android应用(疯狂Android讲义)
- eclipse中使用ddms查看android应用线程状态
- 内存分配跟踪工具DDMS –>Allocation tracker 使用
- 使用百度地图API进行Android地图应用开发(Eclipse)