第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > android profile分析器 Android性能优化之分析工具Profile的使用

android profile分析器 Android性能优化之分析工具Profile的使用

时间:2019-03-06 05:20:03

相关推荐

android profile分析器 Android性能优化之分析工具Profile的使用

Profile是AndroidStudio3.0之后新加的功能,Profile分为三大块分析:CPU、内存和网络,本篇主要介绍内存分析。

一.首先我们开下Profile怎么开始使用?

点击下图按钮运行APP就会开启Profile分析:

运行后如下:

二.内存分析:

如下图,选中MEMORY:

(1)各按钮说明:

其中:

标注1对应的按键用于强制内存回收。

标注2对应的按键用于抓取进程内存的dump信息。

标注3对应的按键用于记录内存的分配信息(连接Android 7.1及以下才会有此按键)。

初次点击时,对应统计的开始时间点;再次点击时,对应统计的结束时间点。

进程在两个时间点之间的内存分配信息,将被Memory Profiler记录和分析。

标注4对应的区域用于缩放时间轴。

标注5对应的按键用于显示实时的内存数据。

标注6对应的区域用于记录事件发生的时间点及大致持续的时间(例如activity状态改变、用户操作界面等事件)。

标注7对应的区域用于显示内存使用情况对应的时间轴(与标注6结合,就可以看出各事件带来的内存变化情况)。

需要说明的是,标注7对应区域显示的内容包括:

不同类型内存占用情况对应的图像;

分配对象数量对应的短画线;

内存回收事件发生的时机。

(2)内存使用说明:

Java表示Java代码或Kotlin代码分配的内存;

Native表示C或C++代码分配的内存(即使App没有native层,调用framework代码时,也有可能触发分配native内存);

Graphics表示图像相关缓存队列占用的内存;

Stack表示native和java占用的栈内存;

Code表示代码、资源文件、库文件等占用的内存;

Others表示无法明确分类的内存;

(3)查看内存使用情况

点击抓取dump信息按钮可以抓取一段时间内APP占用内存的信息

占用信息如图:

Allocations:表示分配对象的总数量

Native Size:表示nativie层占用内存的大小

Shallow Size:表示对象使用Java内存的大小,单位为byte

Retained Size表示对象占用的实际内存大小,大于等于Shallow Size

点击对象可查看Instance View,可查看具体的对象和方法内存使用情况:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。