[Android systrace系列] systrace入门第一式
转载请注明出处:https://www.cnblogs.com/zzcperf/p/13978915.html
Android systrace是分析性能问题最称手的工具之一,可以提供丰富的手机运行信息。
经过摸索,我们可以挖掘出许多技巧,分析问题更加得心应手。
第一篇文章,我先将systrace的官方文档引用一番,毕竟分析systrace的基本操作,是介绍后续技巧的铺垫。
希望我下面对官方文档的体会,能减少翻译腔文档对读者耐心的磨损。
以后每篇文章,开头就来设定小目标吧^^
--------------------------------------------------------
这篇文章的小目标:
1. 抓取systrace的方法
2. 浏览systrace的基本操作
-----------------------------------------
1) 抓取systrace的方法。
Systrace 命令行参考文档:https://developer.android.google.cn/topic/performance/tracing/command-line?hl=zh-cn
相关的博文很多,我就不啰嗦了。
提示:systrace的脚本需要用Python2
技巧:如果使用Windows,缺少python的库,安装前搜关键字“pip 镜像”有惊喜,可以加快下载速度
2)浏览systrace
浏览 Systrace 报告:https://developer.android.google.cn/topic/performance/tracing/navigate-report
相关的博文同样很多,但我很想分享一个技巧:
官方文档竟然没有提示,打开Chrome浏览器,要输入chrome://tracing,点击Load,加载抓取到的trace.html。
如果直接打开或者拖动,有可能会无法显示进程短暂的就绪状态,这个挺重要,后续再详细说明。
初次接触,不少人觉得界面太复杂了。其实我们应该先概览,了解各个区域的分工,在分析问题中,只关注问题相关的信息就好了。
下面标注了官方的图,不知道看完后大家还觉得复杂不。
CPU核心区:显示CPU频率,显示进程在各个CPU的运行情况
进程、线程、事件区域:显示进程的状态,各个流程的耗时,和事件的发生
详细信息区:对选中的流程或事件,提供更加详细的信息。

入门第一招就是这样,干货都在文档里,下一篇文章,我们去了解systrace最实用的一招,也是学完就能干活的一招。
[Android systrace系列] systrace入门第一式的更多相关文章
- [Android systrace系列] systrace的信息从哪里来
-------------------------------------------------------------- 这篇文章的小目标: 1. systrace是怎么抓出来的 2. 这些信息的 ...
- [Android systrace系列] 抓取开机过程systrace
------------------------------------------------------------------------- 这篇文章的小目标:了解抓取开机过程systrace的 ...
- Android视频录制从不入门到入门系列教程(一)————简介
一.WHY Android SDK提供了MediaRecorder帮助开发者进行视频的录制,不过这个类很鸡肋,实际项目中应该很少用到它,最大的原因我觉得莫过于其输出的视频分辨率太有限了,满足不了项目的 ...
- Android视频录制从不入门到入门系列教程(三)————视频方向
运行Android视频录制从不入门到入门系列教程(二)————显示视频图像中的Demo后,我们应该能发现视频的方向是错误的. 由于Android中,Camera给我们的视频图片的原始方向是下图这个样子 ...
- Android:通过systrace进行性能分析
一.Systrace 简介 Systrace 允许您在系统级别(如SurfaceFlinger.WindowManagerService等Framework部分关键模块.服务.View系统等)收集和检 ...
- 【Android进阶系列教程】前言
起因 因为初学Android的时候还没有写博客的意识,现在Android的门是入了,正在进阶的道路上行走,但是就这一路也走了不少的弯路.我想,总得来说Android入门还是比较容易的,网络资源比较丰富 ...
- Android设计模式系列
http://www.cnblogs.com/qianxudetianxia/category/312863.html Android设计模式系列(12)--SDK源码之生成器模式(建造者模式) 摘要 ...
- Analyzing UI Performance with Systrace 使用systrace工具分析ui性能
While developing your application, you should check that user interactions are buttery smooth, runni ...
- Android Studio JNI开发入门教程
Android Studio JNI开发入门教程 2016-08-29 14:38 3269人阅读 评论(0) 收藏 举报 分类: JNI(3) 目录(?)[+] 概述 在Andorid ...
随机推荐
- CentOS 7 搭建 Ceph 集群(nautilus 版本)
搭建 Ceph 分布式集群( nautilus 版本 ) 一.服务器环境说明 主机名 角色 IP地址 ceph-admin ceph-deploy 192.168.92.21 ceph-node1 m ...
- Unity报错:xxx AnimationEvent has no function name specified!
参考:https://blog.csdn.net/register_man/article/details/54172778 在开发时出现了题目中的错误且有动画掉帧的情况,搜索后发现是在动画编辑器中我 ...
- Java的Arrays.sort()方法到底用的什么排序算法
暂时网上看过很多JDK8中Arrays.sort的底层原理,有些说是插入排序,有些说是归并排序,也有说大于域值用计数排序法,否则就使用插入排序...其实不全对.让我们分析个究竟: 1 // Use Q ...
- Mybatis 批量更新遇到的小问题
小问题 记一个开发过程中因为小细节的遗漏而引发的 "莫名其妙",公司中有个2B(to B)供应链项目,持久层用的是 JPA,这里我就不吐槽 JPA 了,这种 SQL 嵌入在代码里的 ...
- SQL Plus的使用详解(登录和常用命令)
1.SQL Plus简介 SQL Plus工具是随 Oracle数据库服务器或客户端的安装而自动进行安装的管理与开发工具, Oracle数据库中所有的管理操作都可以通过 SQLPlus工具完成. SQ ...
- vue实现带logo的二维码/商品条形码/打印商品吊牌
一.带logo的二维码 1.安装 npm install vue-qr --save 2.在页面或组件中使用 <template> <div id="qrcode" ...
- 分布式流平台Kafka
提到Kafka很多人的第一印象就是它是一个消息系统,但Kafka发展至今,它的定位已远不止于此,而是一个分布式流处理平台.对于一个流处理平台通常具有三个关键能力: 1. 发布和订阅消息流,在这一点上它 ...
- VMware 虚拟机下CentOS 7连接网络
查看主机网络配置 ipconfig 1.在centos打开终端命令 2. 输入命令 cd /etc/sysconfig/network-scripts/ 进入文件 输入 ls查看此文件夹下的文件 3 ...
- ctf堆叠注入总结(持续更新)
第一种 1';USE db_name;SET @sql=CONCAT('sql contents');PREPARE stmt_name FROM @sql;EXECUTE stmt_name; 第二 ...
- leetcode 30day--2
202. Happy Number Write an algorithm to determine if a number n is "happy". A happy number ...