ArkUI调试技巧有哪些?

ArkUI调试技巧

HarmonyOS
2024-06-11 22:59:29
浏览
已于2024-6-12 23:04:47修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
morning_dxm

设置刷机长亮以及导出页面树信息,包括组件大小,组件位置等信息

REM 可将该段命令复制,封成一个bat脚本,在刷机完成后执行一下这个脚本即可 
REM 屏幕常亮 
hdc_std shell "power-shell setmode 602" 
  
REM 打开debug开关,dump命令可以直接将render树、element树信息dump到本地文件,不经过ipc,不会丢失树信息 
hdc_std shell param set persist.ace.debug.enabled 1 
pause

页面组件树导出

1. 设置组件树持久化

hdc_std shell param set persist.ace.debug.enabled 1

3. 打印组件树相关信息

打印render树(根据组件设置信息,计算对应组件的基础信息)REM 打印render树 
hdc_std shell aa dump -i 10 -render -c 
打印element树(即到图形渲染之前的相关组件参数信息)REM 打印element树 
hdc_std shell aa dump -i 10 -element -c

1. 获取组件树本地文件    本地存储组件树结构为arkui.dump

查找对应的组件树文件位置hdc_std shell "find data/ -name arkui.dump" 
REM 查询结果如下 
REM data/app/el2/100/base/com.ohos.camera/haps/tablet/files/arkui.dump 
REM data/app/el2/100/base/com.ohos.photos/haps/entry/files/arkui.dump 
导出组件树文件REM 将arkui.dump文件拉取到当前文件夹下 
hdc_std file recv /data/app/el2/100/base/com.ohos.photos/haps/entry/files/arkui.dump . 
         
REM 打开当前cmd所在文件夹 
start .

组件边界开关

打开页面中所有组件边框信息开关

hdc_std shell param set persist.ace.debug.boundary.enabled true

问题定界

通过切换图形后端渲染引擎,可以大概定界图形问题在arkUI还是图形子系统。

如果对应图形渲染问题在切换flutter后,如果依旧复现对应问题,则大概可以定界问题在arkUI,如果切换后不出现,则对应问题可以定界在图形。

切换flutter后端渲染引擎(当前预览采用flutter进行渲染)hdc_std shell mount -o rw,remount / 
hdc_std shell touch /etc/disablerosen 
hdc_std shell chmod 777 /etc/disablerosen 
hdc_std shell ls /etc/disablerosen 
hdc_std shell reboot 
         
echo success 
pause 
切换rosen后端渲染引擎(真机采用rosen进行渲染)hdc_std shell mount -o rw,remount / 
hdc_std shell rm /etc/disablerosen 
hdc_std shell ls /etc/disablerosen 
hdc_std shell reboot 
         
echo success 
pause
分享
微博
QQ
微信
回复
2024-06-12 22:54:54
相关问题
HarmonyOS ArkUI哪些类型的Node?
185浏览 • 1回复 待解决
webview 问题哪些
160浏览 • 1回复 待解决
HarmonyOS换肤方案哪些
325浏览 • 1回复 待解决
uiTest使用问题哪些
2浏览 • 0回复 待解决
HarmonyOS 目前ArkUI图片交互组件吗?
215浏览 • 1回复 待解决
HarmonyOS ArkUI C-API文档吗?
309浏览 • 1回复 待解决
求大佬告知ArkUI图表组件吗?
1795浏览 • 1回复 待解决
List使用问题哪些
253浏览 • 1回复 待解决
GlobalThis替代方案哪些
815浏览 • 1回复 待解决
MongoDB的优势哪些
4068浏览 • 1回复 待解决
PolarDB 备份过程哪些
2493浏览 • 1回复 待解决
提供Webview demo哪些
99浏览 • 1回复 待解决
OAID授权问题哪些
235浏览 • 1回复 待解决
HarmonyOS 换肤方案哪些
180浏览 • 1回复 待解决
OceanBase业务案例哪些
3637浏览 • 1回复 待解决
Flutter 热重载方法哪些
248浏览 • 1回复 待解决
签名证书配置问题哪些
370浏览 • 1回复 待解决
证书锁定功能示例哪些
650浏览 • 1回复 待解决
语音识别的方法哪些
390浏览 • 1回复 待解决
Flutter集成问题哪些
27浏览 • 1回复 待解决
NoSQL的MongoDB哪些优点?
3834浏览 • 1回复 待解决
ArkTS生成密钥问题哪些
266浏览 • 1回复 待解决
启动页面配置问题哪些
444浏览 • 1回复 待解决
横竖屏旋转demo哪些
740浏览 • 1回复 待解决