• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android 性能分析工具之 TraceView 使用说明

Android 性能分析工具之 TraceView 使用说明

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android traceview,traceview,anritsu traceview,traceview使用,traceview.bat等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android 性能分析工具之 TraceView 使用说明


TraceView 是 Android 平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到 method。

TraceView 简介

TraceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的 hotspot。TraceView 本身只是一个数据分析工具,而数据的采集则需要使用 Android SDK 中的 Debug 类或者利用 DDMS 工具。二者的用法如下:

  • 开发者在一些关键代码段开始前调用 Android SDK 中 Debug 类的 startMethodTracing 函数,并在关键代码段结束前调用 stopMethodTracing 函数。这两个函数运行过程中将采集运行时间内该应用所有线程(注意,只能是 Java 线程)的函数执行情况,并将采集数据保存到 /mnt/sdcard/ 下的一个文件中。开发者然后需要利用 SDK 中的 TraceView 工具来分析这些数据。
  • 借助 Android SDK 中的 DDMS 工具。DDMS 可采集系统中某个正在运行的进程的函数调用信息。对开发者而言,此方法适用于没有目标应用源代码的情况。

    DDMS 中 TraceView 使用示意图如下,调试人员可以通过选择 Devices 中的应用后点击\按钮 Start Method Profiling(开启方法分析)和点击\StopMethod Profiling(停止方法分析)

    \

    开启方法分析后对应用的目标页面进行测试操作,测试完毕后停止方法分析,界面会跳转到 DDMS 的 trace 分析界面,如下图所示:
     

    TraceView 界面比较复杂,其 UI 划分为上下两个面板,即 Timeline Panel(时间线面板)和 Profile Panel(分析面板)。上图中的上半部分为Timeline Panel(时间线面板),Timeline Panel又可细分为左右两个Pane:

    • 左边 Pane 显示的是测试数据中所采集的线程信息。由图可知,本次测试数据采集了 main 线程,传感器线程和其它系统辅助线程的信息。
    • 右边 Pane 所示为时间线,时间线上是每个线程测试时间段内所涉及的函数调用信息。这些信息包括函数名、函数执行时间等。由图可知,Thread-1412线程对应行的的内容非常丰富,而其他线程在这段时间内干得工作则要少得多。
    • 另外,开发者可以在时间线 Pane 中移动时间线纵轴。纵轴上边将显示当前时间点中某线程正在执行的函数信息。

      上图中的下半部分为ProfilePanel(分析面板),Profile Panel 是 TraceView 的核心界面,其内涵非常丰富。它主要展示了某个线程(先在 Timeline Panel 中选择线程)中各个函数调用的情况,包括 CPU 使用时间、调用次数等信息。而这些信息正是查找 hotspot 的关键依据。所以,对开发者而言,一定要了解 Profile Panel 中各列的含义。下表列出了Profile Panel 中比较重要的列名及其描述。

      \

      实战分析:

      首先找到自己写的类,这里以我上图中自己写的AddGoodsMatchActivity为例,可以知道其onCreate方法公占用314.069ms,onCreate方法里的各个方法占用时间也很清楚。重点分析其setContentView方法,因为它占用266.874ms 占整个onCreate方法的82.5%,点击setContentView方法
      \

      再点击SetContentView

      \

      再点击inflate
      \

      由此我们可以看到我们自己的方法调用的时间,调用的次数,从而分析问题所在

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android 性能分析工具之 TraceView 使用说明

相关文章

  • 2017-05-26Android常用命令行-adb,android-adb
  • 2017-05-26安卓开发中内存问题分析(一)工具篇
  • 2017-05-26android 5.0后对于apk 跑32 64 的逻辑
  • 2017-05-26android的消息机制
  • 2017-05-26VMware中ubuntu忘记密码的解决办法(转)
  • 2017-05-26android样式和主题(一),android样式主题
  • 2017-05-26Android解析json数据,android解析json
  • 2017-05-26Java Web 开发填坑记- 如何正确的下载 Eclipse,javaeclipse
  • 2017-05-26如何编写高效的android代码
  • 2017-05-228.3.7 Paint API之—— Xfermode与PorterDuff详解(四)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • URL转换成二维码,url
    • 我的android学习经历8,android学习经历8
    • 【RecyclerView与Glide】实现一个Android电子书阅读APP,gliderecyclerview
    • LVS 内核实现分析(1)
    • andriod 读取网络图片,
    • [android] 数据的异步加载和图片保存,
    • 8.3.1 三个绘图工具类详解
    • 【React Native开发】React Native控件之ViewPagerAndroid讲解以及美团首页顶部效果实例(17)
    • Android6.0系统增加那些新特性
    • TabLayout和ViewPager简单实现页卡的滑动,tablayoutviewpager

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有