Android Profiler

原文地址:谷歌官方文档

随着Android Studio 3.0正式版本的发布,谷歌推出了新的–Android Profile替代了原本的Android Monitor分析工具。这些新的分析工具能够为你的应用程序的CPU、内存和网络活动提供实时数据。你可以执行基于方法跟踪来查看代码执行时间、捕获堆转储、查看内存分配以及检查网络传输文件的详细信息。

为了开启这个Android Profiler 窗口,执行以下步骤:

  1. 点击 “View”>“Tool Windows”>“Android Profiler”(你也可以点击工具栏上的Android Profiler这里写图片描述);
  2. 如图1所示,在Android Profilter窗口的顶部,选择你要分析的设备①和应用程序进程②。如果你已经通过usb连接了一个设备,但还没有列出它,请确保已经启用usb调试模式

如果您使用的是 android 模拟器或根设备, Android Profilter会列出所有正在运行的进程, 尽管它们可能不会被调试。启动调试应用程序时, 默认情况下会选择该进程。

Android Profilter现在显示一个共享时间表的视图 (图 1), 其中包括一个包含 CPU、内存和网络使用情况的实时图形的时间线。该窗口还包括时间线缩放控件③、一个用于跳转到实时更新④的按钮, 以及一个显示活动状态、用户输入事件和屏幕旋转事件⑤的事件时间线。

谷歌官方例图

图一. Android Profiler的一个共享时间基线的视图。

这个视图仅显示时间线图。若要访问详细的分析工具, 请单击与要检查的性能数据相对应的关系图。例如, 若要访问检查堆和跟踪内存分配的工具, 请单击内存图表。下面链接的页面提供了有关每个相应的探查器窗口的详细信息。

但是, 默认情况下并非所有的分析数据都可见。如果您看到一条消息“Advanced profiling is unavailable for the selected process,”, 这指出 “高级分析” 对于所选进程不可用, 则需要在运行配置中启用高级分析。

有关每个分析工具的更多文档, 请参见以下内容:

启用高级分析

扫描二维码关注公众号,回复: 3879274 查看本文章

为了向您显示高级分析数据, Android Studio必须将监控逻辑注入到您编译的应用程序中. 高级分析提供的功能包括:

  • 所有分析Profilter窗口上的事件时间线
  • Memory Profilter (内存分析)中已分配对象的数目
  • Memory Profilter (内存分析)中的垃圾回收事件
  • Network Profilter (网络分析)中所有传输文件的详细信息

要启用高级分析, 请按照下列步骤操作:

  1. 选择 “Run > “Edit Configurations”
  2. 在左窗格中选择您的应用程序模块。
  3. 单击 “Profiling” 选项卡, 然后选中 “Enable advanced profiling”

现在, 再次生成并运行您的应用程序, 以访问完整的性能分析功能集。但是, 请注意, 高级性能分析会减慢构建速度, 因此只有在您想开始分析应用程序时才应启用它。


注意

高级分析对本机代码不可用。如果您的应用程序是纯本地应用程序 (它没有 Java 活动类), 则高级分析功能不可用。如果您的应用程序使用 JNI, 则某些高级分析功能可用, 如事件时间线、GC 事件、Java 分配的对象和基于 java 的网络活动, 但它无法检测到 native-based 分配和网络活动。


猜你喜欢

转载自blog.csdn.net/qq_21700489/article/details/78687762