最新 HUAWEI DevEco Studio 调试技巧

简介: 最新 HUAWEI DevEco Studio 调试技巧

最新 HUAWEI DevEco Studio 调试技巧

前言

QU(N2~HWB%JHU7NG(6ZEKA2.png

在我们使用 HUAWEI DevEco Studio 编辑器开发鸿蒙应用时,免不了要对我们的应用程序进行代码调试。我们根据实际情况,一般会用到以下几种方式进行代码调试。

  1. 肉眼调试法
  2. 注释排错调试法
  3. try-catch
  4. 控制台输出法
  5. 弹出提示法
  6. 断点调试法

肉眼调试法

肉眼调试法也称为随缘调试法,一般适用于编辑器有明显错误、或者是刚写完的小段代码中,明显依赖自己的钛合金狗眼。当你刚刚写好的一两行代码,运行发现出错时,就可以直接肉眼排错。如

N55_QF7[JPR]DT%4KIL($MR.png

肉眼调试法 也有很明显的弊端,如果是调试大段程序、或者调试别人的程序。那么此法就不可行了。如:

_8)NXKJ_Q4IYM5C~7}N90RI.png

注释排错调试法

注释排错调试法一般适用于没有明显的错误,自我感觉莫名其妙导致就出错的情况。如代码昨天运行的时候还是好好,今天过来突然就不行了。这个时候,可以大胆的根据代码流程来锁定可能出错的范围,将它注视掉。如果此时程序没有出错,那么就表示锁定出错的范围了。然后继续不断注释其他的,继续缩小范围,继续找到出错的可疑的代码,再进行调错。

PX7K1$6@B@)EL~`L{X6(T8F.png

控制台输出法

控制台输出法,是程序员最拿手的调试法。直接在控制台中输出自己想要查看的数据,便捷快速。

1]WB9TQC`]US~0{[00L8D%N.png

但是在 HUAWEI DevEco Studio中。控制台的输入也有弊端:

  1. console.log的第一个参数必须时字符串
  2. 无法有效的输出对象类型的数据。

~_@GKZ`IAVQ_6E7HGX50Y2G.png

因此对于对象类型的数据,一般可以通过序列化后再输出

ts

代码解读

复制代码

console.log("二师兄", JSON.stringify(pug))

Tips 如果是对象数组,可以使用 console.table 来友好的进行输出

XPXUCOU0GUHS7Q25(3YQJTY.png

try-catch

另外有一些程序可能在运行的时候会导致程序成直接崩溃,也没有太多错误提示,这个时候我们可以使用 try-catch 来捕获和输出错误

ts

代码解读

复制代码

onPageShow() {
  try {
    const list: number[] = []
    const a = list[1] + list[2]
    console.log("成功输出", a)
  } catch (e) {
    console.log("错误信息", e.message, e.code)
  }
}

弹出提示法

进行真机调试时,可以直接利用 harmonyos中提供的弹出窗口的方式 进行输出想要查看的数据

  1. promptAction.showToast({ message: "黎猴呀" })
  2. AlertDialog.show({ message: "执返剂" })

)(O0(B_H[8F77LUFWU)VKOM.png


KPK~HCV{_WW71D5ACC3S}KF.png

断点调试法

如果上述的方案都解决不了你调试bug的需求,那么最后一种你就一定要拿捏住。 该方式主要是利用了 HUAWEI DevEco Studio种提供的断点调试方式来进行。

RUGDA8VKRWEG2_RZ}T]81ZX.png

结束

如果可以帮助到你,欢迎来撩

  1. 邮箱 yeah126139163@163.com
  2. 微信 w846903522
  3. 掘金
  4. b站
  5. 公众号 程序员漫谈
目录
相关文章
|
1月前
|
SQL 人工智能 自然语言处理
JeecgBoot低代码 AI Skills 代码生成实战:用自然语言驱动全栈 CRUD 开发
JeecgBoot低代码平台推出AI代码生成Skills,基于Claude Code实现自然语言驱动的全栈CRUD开发。支持智能字段推导、字典自动匹配、增量修改等能力,一句话即可完成从需求描述到可运行代码的全链路生成。
326 0
|
机器学习/深度学习 人工智能 数据安全/隐私保护
2025年NVIDIA RTX 4090服务器租赁价格与选型详解
随着AI训练、深度学习与图形渲染需求激增,NVIDIA RTX 4090显卡成为算力租赁市场的热门选择。本文从价格体系、配置适配、成本优化三方面解析4090服务器租赁策略,涵盖短租长租价格差异、主流平台对比、硬件配置建议及成本优化方案,助您精准匹配业务需求。此外,还介绍了阿里云高性能GPU实例作为替代方案,提供稳定性和生态集成优势。
|
10月前
|
存储 安全 JavaScript
如何使用Set的add()方法添加元素?
如何使用Set的add()方法添加元素?
804 58
|
9月前
|
存储 安全 Java
Java 学习路线 35 掌握 List 集合从入门到精通的 List 集合核心知识
本文详细解析Java中List集合的原理、常用实现类(如ArrayList、LinkedList)、核心方法及遍历方式,并结合数据去重、排序等实际应用场景,帮助开发者掌握List在不同业务场景下的高效使用,提升Java编程能力。
592 0
|
存储 NoSQL JavaScript
mongodb时间处理,时区处理
mongodb时间处理,时区处理
4373 2
|
缓存 算法 测试技术
性能测试的结果如何才算准确?
性能测试的结果如何才算准确?
507 57
|
人工智能 运维 自动驾驶
回顾与展望,SOMA年终工作会议暨Meet Up圆满举办!
委员们齐聚复旦复盘联盟工作,展望规划联盟发展。
|
前端开发 小程序 Java
uniapp-网络数据请求全教程
这篇文档介绍了如何在uni-app项目中使用第三方包发起网络请求
1023 3
|
人工智能 安全 数据安全/隐私保护
HarmonyOS应用开发实战:基于ArkTS的开箱即用登录页面实现【样式方式实现①】【HarmonyOS 5.0(Next)】
本文介绍了基于HarmonyOS 5.0(Next)和ArkTS实现的开箱即用登录页面。HarmonyOS 5.0是华为于2024年10月22日发布的第三代移动操作系统,具备原生智能、互联、安全及流畅特性。文章详细解析了使用ArkTS开发登录页面的代码,涵盖组件定义、界面布局、事件处理、样式设置及异步操作等内容,展示了清晰的组件结构、响应式设计与模块化编程的优势。通过这段代码,开发者可以快速上手并构建高效、美观的应用界面。
|
缓存 前端开发 JavaScript
探索JavaScript的现代前端技术:从基础到进阶
探索JavaScript的现代前端技术:从基础到进阶
308 1