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.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

页面组件树导出

1. 设置组件树持久化

hdc_std shell param set persist.ace.debug.enabled 1
  • 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.
  • 2.
  • 3.
  • 4.

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 .
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

组件边界开关

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

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

问题定界

通过切换图形后端渲染引擎,可以大概定界图形问题在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
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
分享
微博
QQ
微信
回复
2024-06-12 22:54:54


相关问题
HarmonyOS ArkUI哪些类型的Node?
854浏览 • 1回复 待解决
webview 问题哪些
1087浏览 • 1回复 待解决
uiTest使用问题哪些
1117浏览 • 1回复 待解决
HarmonyOS换肤方案哪些
1224浏览 • 1回复 待解决
HarmonyOS的特性哪些
672浏览 • 1回复 待解决
提供Webview demo哪些
831浏览 • 1回复 待解决
PolarDB 备份过程哪些
3364浏览 • 1回复 待解决
HarmonyOS 换肤方案哪些
1141浏览 • 1回复 待解决
OceanBase业务案例哪些
4526浏览 • 1回复 待解决