codecamp

鸿蒙OS 各语言调试功能

JS调试功能

对 JS 进行调试的界面如下:

点击放大

按钮 名称 快捷键 功能
img Resume Program F9 当程序执行到断点时停止执行,点击此按钮程序继续执行。
img Step Over F8 在单步调试时,直接前进到下一行(如果在函数中存在子函数时,不会进入子函数内单步执行,而是将整个子函数当作一步执行)。
img Step Into F7 在单步调试时,遇到子函数后,进入子函数并继续单步执行。
img Force Step Into Alt+Shift+F7 在单步调试时,强制下一步。
img Step Out Shift+F8 在单步调试执行到子函数内时,点击Step Out会执行完子函数剩余部分,并跳出返回到上一层函数。
img Rerun Ctrl+F5 重新启动调试。
img Stop Ctrl+F2 停止调试任务。
img Run To Cursor - 断点执行到鼠标停留处,仅TV、Wearable支持。

  • 常用的调试功能:

  • 变量值查看:在调试过程中,可以通过调试侧边栏中的 Variables 查看已执行程序中包含的变量的当前取值。

  • 变量监控:也可以在 Watches 中添加关注的变量,对添加的变量进行监控。

  • 调用栈信息查看:可以在 Frames 中查看函数的调用栈信息。

点击放大

  • 调试日志打印:调试控制台 Console 可以打印调试的日志信息。

点击放大

Java 调试功能

  • 通过 Attach Debugger to Process 选择进程进行调试,能根据调试类型,在已运行应用的设备上,自动进入相应的调试模式。 点击放大

  • 具备 Step Into, Step Out, Step Over, Force Step Into, Rerun、Run To Cursor 等基本调试能力,详细描述请参考[表 调试器按钮]。

  • 支持 Inline Values,即编辑器显示变量值。

  • 调试中断后,能够恢复执行。

C/C++ 调试功能

  • 通过 Attach Debugger to Process 选择进程进行调试,能根据调试类型,在已运行应用的设备上,自动进入相应的调试模式。

点击放大

  • Native 类型调试器,能启动 Debug Session 和 LLDB Server 运行调试。

  • 具备 Step Into, Step Out, Step Over, Force Step Into, Rerun、Run To Cursor 等基本调试能力,详细描述请参考[表1]。

  • 支持 Force Step Over。

  • 支持 Inline Values,即编辑器显示变量值。

  • 调试中断后,能够恢复执行。

  • LLDB 命令控制台:

  • 支持使用 LLDB 命令自助调试
  • 支持 UI 调试按钮/快捷键多指令输入
鸿蒙OS 基本调试操作
鸿蒙OS 编译构建生成APP
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

鸿蒙OS 开发

鸿蒙OS 术语

鸿蒙OS Java API参考

鸿蒙OS ohos.aafwk.ability

鸿蒙OS ohos.aafwk.abilityjet.activedata

鸿蒙OS ohos.aafwk.content

鸿蒙OS java.lang

鸿蒙OS java.Util

鸿蒙OS java.Util class

鸿蒙OS ohos.data.dataability

鸿蒙OS ohos.data.dataability class

鸿蒙OS ohos.agp.components

鸿蒙OS ohos.agp.components interface

鸿蒙OS ohos.agp.components class

鸿蒙OS ohos.global.configuration

鸿蒙OS java.io

鸿蒙OS ohos.data.resultset

鸿蒙OS ohos.data.resultset interface

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }