AndroidStudio--Profiler

    Android Profiler在Android Studio 3.0或者更高版本替代Android Monitor。提供实时数据帮助你理解你的APP是怎么样使用CPU、Memeory、Network、Battery Resources。
打开方式: 1. View > Tool Windows > Profile
                   2. Toolbar > Profile 'app'
启动方式:点击 + 加载对应app进程

启动方式

  • 界面分析
    1. 显示当前正在被分析的进程和设备
    2. 在Sessions窗口,可以选择session查看或者启动一个新的分析session,可以导出或者从文件加载,停止删除删除session。
    3. 使用zoom按钮控制timeline放大、缩小和重置,Detach live 和 Attach to live按钮用来停止实时分析和跳转到最新实时分析。
    4. event timeline 显示用户输入相关事件,包括键盘活动、音量控制、屏幕旋转、点击事件。如果不出现会有enable advanced profiling的提示。
    5. 包含CPU、Memory、Network和Energy Usage时间线图表,通过单击图表查看更多内容。
界面说明
  • 启用高级分析
    要在Android 7.1或更低版本的设备上显示高级分析数据,Android Studio必须将监控逻辑插入到编译后的应用程序中。
    高级分析提供的功能包括:
        所有事件探查器窗口上的事件时间线
        内存探查器中分配的对象数
        内存探查器中的垃圾收集事件
        有关网络探查器中所有传输文件的详细信息
    如果Android 8.0或更高版本的设备,这些功能在默认情况下是可用的。
    启动高级分析:
        1. Run > Edit Configurations.
        2. 选择左侧APP
        3. 选择右侧Profiling tab,打勾 Enable advanced profiling.
        4. 再次编译、运行你的APP.
    高级分析注意:
        高级分析配置会build变慢,因此只有在希望开始分析应用程序时才应启用它。
        高级分析不适用于native code。如果您的应用程序是纯native code(没有Java Activity Class),那么高级配置功能不可用。如果应用程序使用JNI,则可以使用一些高级分析特性,如事件时间线、垃圾回收事件、Java分配对象和基于Java的网络活动,但它无法检测nactive层分配和网络活动。

    Android SDK Version

  • 启动记录CPU活动在APP启动时
    适用于分析APP启动过程
    启用方式:
        1. Run > Edit Configurations.
        2. 选择左侧APP
        3. 选择右侧Profiling tab,打勾Start Recording CPU activity on startup.
        4. 通过Run > Profile 'APP',或者工具栏Profile 'APP'来启动APP;启动后会自动进入CPU分析页面并自动开始Record CPU trace。

    config

    running

  • 注意事项

  1. 分析应用程序时,应禁用即时运行disable Instant Run。使用即时运行时性能影响较小,但是更新方法时影响稍大。这种性能影响可能会干扰性能分析工具提供的信息。此外,使用该特性时生成的残存方法会使堆栈跟踪复杂化。
  2. Android Profiler支持Android5.0(API 21)或者更高版本的设备。但是 Advanced profiling 在Android8.0(API 26)及以上设备上才自动运行;如果是低于Android 8.0(API 26)设备,需要手动启用并调整APP Compile和Target小于Android8.0(API 26),因为编译时会插入监控逻辑到APP。
  3. 高级分析不适用于native code,但是JNI可以。
  4. 使用Android模拟器或者rooted设备才能显示所有进程。
  5. ENERGY分析需要Android8.0(API 26)或者更高版本的设备。
disable Instant Run

Enable advanced profiling

你可能感兴趣的:(AndroidStudio--Profiler)