Android系统 抓trace方法(手机及车机)

1、先说说什么是trace

trace是一种以perfetto.trace结尾的文件。一般用来分析卡顿、启动时间慢等问题,还可以用来分析方法耗时,android系统的性能、功耗等等问题。所需要使用到的网站是:

Perfetto UI

他的前身是Systrace,不过Perfetto更清晰,更强大。

2、如何抓取

考虑到很多小伙伴使用的系统是windows和ubuntu系统,这里提供这两种系统的抓取方式。

1、windows系统

这有个脚本可以直接使用。文件放在最后的网盘链接里了。

下载解压完成后,使用usb线连接手机或者车机,android车机的可能需要root,或者使用Debug版本。连接完成后使用adb devices查看是否成功连接。

点击go.bat会弹出一个命令窗口,此时就已经开始抓取了。你可以在手机或者车机上复现你想查看的场景。操作结束后,点击任意键结束录制。录制文件会保存在go.bat的同级目录下。

2、ubuntu系统

通过网盘链接下载base_config和record_android_trace。

record_android_trace是一个脚本文件

base_config是配置文件。

方法1, 直接配置trace tag

python3 record_android_trace -o trace_file.perfetto-trace -t 10s -b 32mb  sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory

 其中 -t 表示录制时间,-b表示缓存大小,可以自定义。后面的就是需要抓取的数据。

# 抓perfetto 方法2,使用配置文件

python3 record_android_trace -c base_config -o trace_file.perfetto-trace

按CTRL+C结束录制,结束后会自动弹出Perfetto网站并加载文件。(推荐使用)

3、以上都抓取都无效的情况。

我在最近的实验中发现,上述方法可以抓取,但是Perfetto网站怎么也读取不成功,或者直接就是抓取失败。

如果上述两种方法都不行,那就只能使用adb命令进行抓取。

adb shell perfetto -o /data/misc/perfetto-traces/trace_file.perfetto-trace -t 20s sched freq idle am wm gfx view

adb pull /data/misc/perfetto-traces/trace_file.perfetto-trace

要更改抓取时间则将 -t 后面的值替换即可,如果要增加缓存大小,则加 -b 对应的大小值mb

3、文件提取处

链接: https://pan.baidu.com/s/1NZUKRaGnXi2Fj-Ph4Hby7g

提取码: 8p6f

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/31316.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式事务的八种方案解析

分布式事务的八种方案解析 针对不同的分布式场景业界常见的解决方案有2PC、TCC、可靠消息最终一致性、最大努力通知等方案,以下总结8 种常见的解决方案,帮助大家在实际的分布式系统中更好地运用事务。 1.2PC 二阶段提交协议(Two-phase commit…

2024年旅游与经济发展国际会议(ICTED 2024)

2024年旅游与经济发展国际会议(ICTED 2024) 2024 International Conference on Tourism and Economic Development 【重要信息】 大会地点:青岛 大会官网:http://www.icicted.com 投稿邮箱:icictedsub-conf.com 【注意…

第一个Java程序

编写第一个Java程序通常从经典的"Hello,World!"程序开始。下面是一个简单的Java程序示例,它将打印出"Hello, World!"到控制台: 1.编写代码: 打开文本编辑器(如记事本、Notepad、Visual StudioCode等&#x…

Oracle 学习之 各种语句

概览 Oracle 学习之 DDL 语句Oracle 学习之 DCL 语句Oracle 学习之 DML 语句Oracle 学习之 DTL 语句

【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(十五)

课程地址: 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程,一套精通鸿蒙应用开发 (本篇笔记对应课程第 23 - 24 节) P23《22.Stage模型-基本概念》 一个应用可以有很多的能力,每个能力可以成为一个 Ability Mod…

微信小程序常用 API

微信小程序提供了丰富的 API,用于实现各种功能,如网络请求、数据缓存、地理位置获取、用户授权等。以下是微信小程序常用 API 的简介: 1. wx.request wx.request 用于发起 HTTP 网络请求,用于获取服务器数据。它支持 GET、POST、…

领域驱动设计(DDD)微服务架构模式总结

part1. Domain Driven Design(Strategic Design,Tactical Design) Top Down focus on business or activityy domain Ubiquitous Language:统一语言 Tactical Design Tools:战术性设计工具 Implementing Domain Driven Design(Event storming,DDD in code) DDD总结…

阿里巴巴橙点同学达摩院认证证书

网址:https://orange-class.com/ 为竞争激烈的职业做好充分的准备,无需相关经验立即开始学习。 阿里达摩院组织背书认证。 内容包括八个职业方向,涉及AI、开发、营销、设计等不同岗位: 其中,AI的高级认证情况如下&…

深度学习之forward

在深度学习代码中, f o r w a r d forward forward函数主要完成了神经网络的前向传播( f o r w a r d p r o p a g a t i o n forward\ propagation forward propagation)过程。 f o r w a r d forward forward方法定义了模型的前向传播过程&…

Nginx 配置文件(nginx.conf)中的常用参数

常用参数1: 1. user:指定运行 Nginx 工作进程的用户和用户组,例如 user nginx nginx; 。 2. worker_processes:设置 Nginx 进程的工作进程数量,通常根据服务器的 CPU 核心数来设置,例如 worker_processes…

收藏丨世界地形图(超高清)

原文链接https://mp.weixin.qq.com/s?__bizMzUyNzczMTI4Mg&mid2247668146&idx2&snbebd2f4921994ab05ed47efdebe8e706&chksmfa770e8fcd008799bf1d1cabd62edca7f60a5c7a1ef9c0bacf3bdc102bccf0f12d54d6c07c49&token1405091246&langzh_CN&scene21#we…

盘点:20个大幅提高效率的开源网络安全工具

覆盖数字取证、加密传输、云威胁检测、渗透测试、漏洞扫描、开源代码审核、移动应用安全评估等多个领域。 开源安全项目对于推动网络安全的创新和自动化正发挥着越来越重要的作用。 以下,我们整理了近年来发布的20个能大幅提高工作效率,节省时间的优秀…

Ubuntu 22.04.4 LTS openresty(Nginx) 通过Lua+Redis 实现动态封禁IP

1 系统环境 testiZbp1g7fmjea77vsqc5hmmZ:~$ cat /etc/os-release PRETTY_NAME"Ubuntu 22.04.4 LTS" NAME"Ubuntu" VERSION_ID"22.04" VERSION"22.04.4 LTS (Jammy Jellyfish)" VERSION_CODENAMEjammy IDubuntu ID_LIKEdebian HOME…

星谷案例入选新华社国家高端智库报告,彰显国际影响力!

中关村科学城星谷(创新园)以其在商业航天领域的卓越创新能力和显著产业影响力,被新华社国家高端智库专题组认可,并入选《更好赋能中国繁荣世界——新质生产力的理论贡献和实践价值》智库报告,成为新质生产力的典型代表案例。 这是中关村科学城星谷(创新园)继登上《新闻联播》后…

卓越的 App UI 风格引领潮流

卓越的 App UI 风格引领潮流

RAG实操教程langchain+Milvus向量数据库创建你的本地知识库 二

Miluvs 向量数据库 关于 Milvui 可以参考我的前两篇文章 • 一篇文章带你学会向量数据库Milvus(一)[1]• 一篇文章带你学会向量数据库Milvus(二)[2] 下面我们安装 pymilvus 库 pip install --upgrade --quiet pymilvus如果你…

如何开启Claude 3的Artifacts功能以及如何注册Claude3

就很突然,Claude 3.5,它来了! Anthropic发布3.5系列第一个版本Claude 3.5 Sonnet。在多个关键指标中,GPT-4o几乎被吊打! 另外Claude 3.5 Sonnet是免费的,提供了跟gpt-4o一样的次数。更高的速度和次数&…

python循环写入新样本到csv文件,并解决中文乱码的问题

新样本循环写入csv中 def write_sample(self):# 创建一个包含所有字段的列表,它将作为CSV的一行fields [基地, 拉线, 正/负极车间, 罐体编号, 样本ID, 工步序号, 检测结果]row_data [self.base_id, self.line_id, self.workshop_id, self.device, self.filename[:…

使用sendBeacon进行前端数据上报

目录 前言 上报数据的时机 上报数据的方法 1. 直接发请求上报 2. 动态图片 3. sendBeacon 总结 前言 这个方法主要用于满足统计和诊断代码的需要,这些代码通常尝试在卸载(unload)文档之前向 Web 服务器发送数据。过早的发送数据可能导…

微信公众号多域名回调系统V1.5 源码

这是一款基于ThinkPHP6.0开发的微信公众号多域名回调系统。本系统有如下功能: 微信公众号多域名回调功能:微信公众号后台默认只能授权2个网页域名,用本系统突破这个限制,用同一个公众号对接无限多个网站。网站后台支持回调域名白…