相关问题
webview有哪些调试工具?调试工具的用法是什么
1795浏览 • 1回复 待解决
HarmonyOS性能测试工具获取地址
278浏览 • 1回复 待解决
HarmonyOS 调试工具执行命令异常
371浏览 • 1回复 待解决
使用迁移调试工具报supportScene配置错误
117浏览 • 0回复 待解决
关于Web调试。在研发过程中,经常需要调试应用中的Web页面,目前提供的Web调试工具Devtools
804浏览 • 1回复 待解决
IDE是否支持远程调试工程机的可执行文件,或者提供适相应的lldb/gdb工具用来调试
525浏览 • 1回复 待解决
调试工程时提示警告怎么处理?
228浏览 • 1回复 待解决
HarmonyOS UI测试工具DevEco Testing Hypium使用
656浏览 • 1回复 待解决
HarmonyOS应用的自动化测试工具
428浏览 • 1回复 待解决
HarmonyOS 是否有类似Monkey的自动化测试工具
391浏览 • 1回复 待解决
有没有性能分析工具啊?
808浏览 • 1回复 待解决
请问大家用过什么web api压力测试工具,谢谢
2428浏览 • 1回复 待解决
hdc工具支持远程调试吗?
3295浏览 • 1回复 待解决
使用HiDumper命令行工具优化性能
620浏览 • 1回复 待解决
如何使用DevTools工具调试前端页面?
401浏览 • 1回复 待解决
"NAPI通信耗时长"导致丢帧分析
646浏览 • 1回复 待解决
HarmonyOS 怎么调试检测应用的性能,耗电量等
364浏览 • 1回复 待解决
#鸿蒙学习大百科#性能优化工具都有什么?
293浏览 • 0回复 待解决
如何理解Intent类及其用法?
7049浏览 • 4回复 已解决
HarmonyOS ShareKit分享多张图片弹起分享窗口显示分享1张图片
62浏览 • 1回复 待解决
实现一个自定义动画,出现丢帧问题
319浏览 • 1回复 待解决
分享沙箱文件,应用可分享单个文件
948浏览 • 1回复 待解决
使用鸿蒙应用开发工具DevEco Studio调试前怎么获取udid
6935浏览 • 1回复 待解决
HarmonyOS MAC系统利用DevTool工具调试Web页面无法配置端口映射
396浏览 • 1回复 待解决
#鸿蒙学习大百科#什么情况下会产生丢帧?
121浏览 • 1回复 待解决
(一)性能调试工具:
1. deveco-studio-4.0.1.11.win工具的使用:即用该IDE出的包,安装在单框架设备上,就可以快照查看性能耗时方式和代码位置。
1.1 下载IDE工具解压到本地(如D:\Tools\deveco-studio-4.0.1.200.win):
1.2 双击devecostudio64.exe运行IDE:注意首次启动,需要配置node(node安装路径不能为空,推荐14.19.1版本)和ohpm(需要下载配置,但可以不用),本地没有的需要install下载。
1.3 IDE里面配置sdk路径(项目仍然是3.2.10.10版本)和local.properties配置。
1.4 用IDE打开单框架应用市场项目,初始化依赖,签名配置相关等以保证能正常编译打包。之后通过IDE出一个本地编译的包,安装到最新手机rom上(如rom33+)。
1.5 打开IDE底部的Insight菜单(打开后的窗口支持拖拽与IDE窗口分离)。
1.6 注意IDE右上角的设备,必须连上显示正确的手机设备型号。
1.7 点击开始快照,等到出现recording之后,开始操作手机上的单框架应用市场界面,之后停止快照。
2.脚本抓trace,网站解析trace分析性能
2.1 创建个getTrace.bat脚本,用以抓测试设备操作一段时间生成的tarce。bytrace -t 10 表示抓10s操作测试设备过程的tarce。
2.2 双击允许getTrace.bat脚本,然后操作usb连接电脑的测试设备手机(如应用市场启动流程),10s后,就可以在和getTrace.bat脚本同级目录下生成一个trace文件。
2.3 通过网址,去打开和getTrace.bat脚本同级目录下生成的一个trace文件,然后解析即可
3.avidemux:用以针对应用操作界面录屏,逐帧查看渲染画面,以及查看每一帧的实际耗时。
· 3.1 下载avidemux:见附件。
· 3.2 使用:见下截图。
(二)来回上下快速滑动卡顿案例:
1.基于deveco-studio-4.0.1.11.win工具的快照分析。
2. 操作分析快照步骤流程:
2.1 手机启动应用市场。
2.2 启动deveco-studio-4.0.1.11.win工具的Insight,选择手机设备和应用市场进程。
2.3 来回上下快速滑动应用市场首页,查看deveco-studio-4.0.1.11.win工具的FPS帧率。如下截图显示:
2.3.1 现象描述:
a. 在应用市场顶部快速来回下滑(或触底底部快速来回上滑)时,帧率在55+(接近满级60帧)。
b. 在应用市场中间部分快速来回上下滑动时,帧率在2~25帧,远低于满级60帧,体验明显感觉到卡顿。(删除hilog和客户端自身日志文件写入,可以达到45+帧左右)。
2.4 接下来重点用Frame快照分析2.3.1现象描述中的b现象:分析不同甬道,逐帧逐帧查看,存在异常帧(红色为异常卡顿帧,绿色为正常帧)就挑出来分析导致异常帧渲染超时的原因。
2.4.1 对于我们应用端来说,主要考虑App Frame甬道(先收藏)的帧情况和ArkTS Callstack甬道里面的ArkTS/JS的函数调用数据情况,其中绿色帧是正常,红色帧则异常,只需要分析红色异常帧。通过ctrl+鼠标滚动查看App Frame甬道,发现总共有196帧快照,其中在第【17,46,47,52,53,57,58,67,68,73,74,79,80,81,82,85,86,87,88,89,91,92,93,94,100,101,102,103,112,113,119,120,123,124,125,126,127,128,129,135,136,139,140,141,142,151,152,153,156,157,163,164,165,166,179,180,196】帧是红色,是异常帧。
选中App Frame甬道的第17帧(红色异常帧),查看该帧下ArkTS Callstack甬道里面ArkTS/JS的函数调用数据情况。
通过对App Frame甬道的所有红色异常帧的ArkTS Callstack甬道里面ArkTS/JS的函数调用数据情况,进行分析,结果汇总大概有如下几类:
a. 存在高频触发DownloadButton.ets\DownloadImage.ets组件中log日志的打印,写入文件,判断文件情况。所以对于应用市场首页高频使用的NormalCard卡片(里面相关组件)里面需要减少日志。【占比最重】。
b.组件代码布局不规范(如简单卡片,复杂布局,特别是flex会导致渲染计算更长)。
b1. 通过组件树查找客户端NormalCard卡的布局是否合理:如下分析组件树
面的布局结构:
如下一个简单的normal卡,却出现了如上复杂的组件树,即存在布局不合理,需要整改该组件的布局
c. arkui运行时编译函数调用(渲染动态布局和自定义组件),但占比很少,且在期望帧时间内(即粉色部分)和最后实际帧时间(即红色最后部分)才有些触发。