AndroidStudio:利⽤Profiler来监控CPU、内存和⽹络本教程相当于官⽅教程的精简版,将官⽅教程的⼲货提取出来。另外还写了⼀个分析内存泄漏的例⼦。
Android Profiler能够提供关于应⽤ CPU、内存和⽹络的实时数据。
⽬录
1 启动分析崇文区小学
要打开 Android Profiler 窗⼝,请按以下步骤操作:
1. 点击⼯具栏中的 Android Profiler(也可以点击 View > Tool Windows > Android Profiler )。
2. 在 Android Profiler 窗⼝顶部选择想要分析的设备和应⽤进程,如下图所⽰。
media centerAndroid Profiler 窗⼝
上图中各个数字对应的含义:
① 要分析的设备。
regretful② 要分析的应⽤进程。
③ 时间线缩放控件。
④ 实时更新跳转按钮。refrigerant
⑤ Event时间线,包括Activity状态、⽤户输⼊Event和屏幕旋转Event。
如果显⽰“Advanced profiling is unavailable for the lected process”,可以在顶层⼯具栏中点击 Profile 'app' 来运⾏,或者在运⾏配置中启⽤⾼级分析,按以下步骤操作:
1. 选择 Run > Edit Configurations。
2. 在左侧窗格中选择您的应⽤模块。
beautifulpeople3. 点击 Profiling 标签,然后勾选 Enable advanced profiling。
重新构建并运⾏应⽤即可。
2 CPU Profiler新加坡国立大学研究生申请
CPU Profiler 可帮助实时检查应⽤的 CPU 使⽤率和线程 Activity,并记录函数跟踪,以便优化和调试应⽤代码。
2.1 CPU Profiler 概览
CPU Profiler 概览
如上图所⽰,CPU Profiler 的默认视图包括以下内容:
① Event 时间线: 显⽰应⽤中在其⽣命周期转换的 Activity,并显⽰⽤户与设备的交互,包括屏幕旋转 Event。
② CPU 时间线: 显⽰应⽤的实时 CPU 使⽤率(占总可⽤ CPU 时间的百分⽐)以及应⽤使⽤的总线程数。 此时间线还显⽰其他进程的 CPU 使⽤率(如系统进程或其他应⽤),以便可以将其与⾃⼰的应⽤使⽤率进⾏对⽐。 通过沿时间线的⽔平轴移动⿏标,还可以检查历史 CPU 使⽤率数据。
使⽤ Call Chart 标签检查跟踪
2015ama提⽰: 若要跳转到某个函数的源代码,请右键点击该函数并选择 Jump to Source。
marketingstrategy2.2.2 使⽤ Flame Chart 标签检查跟踪
Flame Chart 标签提供⼀个倒置的调⽤图表,其中⽔平轴不再代表时间线,它表⽰每个函数相对的执⾏时间。
下⾯说明此概念,考虑下图中的调⽤图表。注意函数 D 多次调⽤ B(B1、B2 和 B3),其中⼀些对 B 的调⽤也调⽤了 C(C1 和 C3)。
使⽤ Flame Chart 标签检查跟踪
英语六级答案由于 B1、B2 和 B3 共享相同的调⽤⽅顺序 (A → D → B),因此可将它们汇总在⼀起,如下所⽰。 同样,将 C1 和 C3 汇总在⼀起,因为它们也共享相同的调⽤⽅顺序 (A → D → B → C)。注意未包含 C2,因为它具有不同的调⽤⽅顺序 (A → D → C)。
汇总的函数调⽤⽤于创建⽕焰图,如下图所⽰。注意,对于⽕焰图中任何给定的函数调⽤,⾸先显⽰消耗最多 CPU 时间的被调⽤⽅。
2.2.3 使⽤ Top Down 和 Bottom Up 检查跟踪
Top Down 标签显⽰⼀个函数调⽤列表,在该列表中展开函数节点会显⽰函数的被调⽤⽅。 下图显⽰上⾯调⽤图表对应的“Top Down”图表。图表中的每个箭头都从调⽤⽅指向被调⽤⽅。
>三校生高复班