0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DevEco Studio 4.1带来多种调试能力,助力鸿蒙原生应用开发高效调试

话说科技 来源:话说科技 作者:话说科技 2024-02-04 15:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

目前,HarmonyOS NEXT星河预览版已经正式面向开发者开放申请,面向鸿蒙原生应用及元服务开发者提供的集成开发环境——DevEco Studio也迎来功能更细化的4.1版本。3年来,HUAWEI DevEco Studio不断挖掘、汲取开发者的需求和建议,经过持续打磨和系列升级实现新突破,将全力支持鸿蒙原生应用开发。

为助力高效开发,快速定位问题,DevEco Studio 4.1带来多种调试能力,适用于不同的开发场景,如跨语言调试、混合堆栈、反向调试、热重载、ArkUI Inspector等,本文将介绍DevEco Studio新版本的各项功能场景。

ArkTS C++跨语言混合调试,操作体验如同单语言

通常,鸿蒙原生应用开发场景中,会使用ArkTS语言开发前端页面,使用C++语言来实现高性能、低内存以及底层算法解码接口的调用,此场景下调试就需要使用到ArkTS--C++跨语言混合调试能力,该能力支持调试执行到调用C++方法的位置,支持点击step into按钮,以及直接跳转到对应的C++方法的代码中。

开发者只需在调试设置界面将Debug type设置为“Dual(ArkTS/Js + Native)” ,开启混合调试模式。

1.1 并行栈视图,可视化查看堆栈调用关系

当step into跳入到C++方法的代码中继续进行调试时,DevEco Studio提供了并行栈视图功能,支持在程序停住时,可同时展示多个线程的调用栈信息,并且自动合并重复调用栈,方便开发者分析程序的并发执行情况,以及发现潜在的多线程问题。而且支持双击视图上的调用栈跳转到对应堆栈,来查看该堆栈的变量信息。

在C++调试中窗口中点击右上角「Layout Settings」按钮,选择 Parallel Stacks页签,即可打开并行栈视图。

1.2 内存查看和修改

调试C++代码时,DevEco Studio还支持内存查看和修改,开发者可以查看指定地址的内存,进行内存转换、查看变量的内存,以及内存修改等操作。

同样在C++调试中窗口中点击右上角Layout Settings按钮,选择 Memory View ,快速打开内存查看窗口。

FaultLog异常混合堆栈支持跳转到代码,更快地定位问题

ArkTS--C++混合语言开发场景下,可能会遇到C++代码出现崩溃,希望能够定位到ArkTS调用的位置,以此判断是代码逻辑问题还是系统侧问题。

此场景下,DevEco Studio提供混合堆栈定位能力,即在C++ Crash中缝合调用C++方法的ArkTS代码堆栈信息,并将对应代码位置的堆栈进行解码分析,点击链接能够直接跳转到对应的代码行位置,方便开发者查看实际代码调用链,快速定位问题。

与此同时,DevEco Studio集成了ASan(Address-Sanitizer),提供面向C/C++的地址越界检测能力,并通过FaultLog展示错误的堆栈详情及丰富的寄存器、Memory Map等信息。

C++反向调试,支持回退到历史行和历史断点查看变量信息

针对C/C++开发场景中的偶发性问题,DevEco Studio则提供反向调试能力。在调试过程中如果对已经调试过的代码有疑问,可以反向Step Over回退到历史行,反向Resume执行到历史断点,同时,还可以在程序执行历史的记录点上查看全局、静态、局部变量值,更有利于开发者分析代码和定位问题。

打开File > Settings > Build,Execution,Deployment > Debugger > C++ Debugger设置界面,勾选Enable time travel debug开启C++反向调试。

Hot Reload热重载,保存已修改的代码后,无需重启应用继续调试

在调试过程中,开发者发现问题及时修改代码后,如果需要重启调试,再次经历编译构建,推包安装,启动运行,才能看到修改后的效果,这样反复操作比较消耗时间,为解决该问题,DevEco Studio提供热重载(Hot Reload)能力,支持文件增量编译,应用运行时热重载,这样开发者在修改源代码保存后,无需重启调试,就能立即在真机上看到修改后的效果,优化调试过程中重复的流程,提升调试效率。开发者可以在「菜单栏」点击Hot Reload按钮,或者设置快捷键来开启。

ArkUI Inspector定位UI问题,提供更多分析功能

调试应用在运行状态下的UI显示效果,是常见的开发场景。为此,DevEco Studio提供ArkUI Inspector功能,开发者可以在窗口查看当前运行应用运行的UI信息,包括查看UI组件树,查看组件属性、组件的父子关系,检查是否有冗余的组件,检查UI和高保真是否一致等等;优化UI组件后点击源码跳转按钮即可跳转至源码位置,这样有助于分析在UI界面经过复杂操作之后产生的逻辑错误,方便问题定位,改进优化UI代码。

初次使用打开View >Tool Windows > ArkUI Inspector触发,即可以在DevEco Studio界面下方展示ArkUI Inspector调试窗口。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 调试
    +关注

    关注

    7

    文章

    653

    浏览量

    35877
  • 鸿蒙
    +关注

    关注

    60

    文章

    3018

    浏览量

    46173
  • HarmonyOS
    +关注

    关注

    80

    文章

    2157

    浏览量

    36289
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    简单高效鸿蒙编译提速技巧

    编译配置:通过编译配置,轻松提升编译速度,让开发效率翻倍 (1)默认开启的编译优化配置 DevEco Studio提供了增量构建、并行构建等能力来提升构建效率,减少构建耗时。这些构建
    的头像 发表于 03-04 16:09 252次阅读
    简单<b class='flag-5'>高效</b>的<b class='flag-5'>鸿蒙</b>编译提速技巧

    应用开发准备工作

    : 自动签名:如果您只需要使用一台调试设备,建议使用DevEco Studio提供的自动签名。 手动签名:如果您使用多台调试设备或者会在断网情况下
    发表于 01-04 10:47

    AMD Vivado ChipScope助力硬件调试

    许多硬件问题只有在整个集成系统实时运行的过程中才会显现出来。AMD Vivado ChipScope 提供了一套完整的调试流程,可在系统运行期间最大限度提升对可编程逻辑的观测能力助力设计调试
    的头像 发表于 09-05 17:08 1288次阅读

    【汇思博SEEK100开发板试用体验】记录DevEco Studio 中遇到的问题

    在华为鸿蒙(HarmonyOS)应用开发工具 DevEco Studio 中遇到的问题。主要问题有以下几点: 1. 预览功能失败 底部 PreviewerLog 中显示 “Cu
    发表于 08-24 21:01

    【汇思博SEEK100开发板试用体验】在开发鸿蒙OS搭建QT开发环境

    无缝运行。理解这一架构原理,对于后续进行开发实践至关重要。 三、开发环境搭建 (一)所需工具及软件准备 1.华为 DevEco Studio:作为鸿
    发表于 08-24 18:34

    HarmonyOSAI编程DevEco AI辅助编程工具

    DevEco AI辅助编程工具(CodeGenie)基于BitFun Platform AI能力平台,为开发者提供高效的应用与服务AI编程支持,支持智能知识问答、代码生成、页面生成、万
    发表于 08-18 14:54

    【润开鸿HH-SCDAYU800A开发板试用体验】Hello World

    192.168.1.4:5555 Connect OK 设备显示出来了 DevEco Studio 开发鸿蒙应用程序用到DevEco
    发表于 07-01 00:52

    鸿蒙地图功能开发【2. 申请Profile文件】##地图开发##

    ​如果使用鸿蒙的Map Kit能力进行地图开发的话,需要在后台的API管理里面打开“地图服务”。 如果是在原有项目上增加的话,那么……你需要去申请一个新的Profile文件 我们按照新项目的流程去走
    发表于 06-29 22:54

    DevEco CodeGenie 鸿蒙AI 辅助编程初次使用

    一、工具概述与核心能力 DevEco CodeGenie 是集成在 DevEco Studio 中的 AI 辅助编程插件,专为 HarmonyOS 应用
    的头像 发表于 06-26 08:48 1089次阅读

    硬件调试:JLink 驱动配置与调试技巧

    调试器的工作原理、驱动配置流程、调试环境搭建、断点设置、寄存器与内存调试调试日志分析等方面,结合实际应用案例,旨在为硬件工程师和技术开发
    的头像 发表于 06-12 23:20 1895次阅读
    硬件<b class='flag-5'>调试</b>:JLink 驱动配置与<b class='flag-5'>调试</b>技巧

    使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件

    点击工具栏中的运行按钮,选择模拟器启动应用 5.2 真机调试 用 USB 线将鸿蒙设备连接到电脑 在设备上多次点击版本号开启 开发者选项 和 USB 调试 功能 在
    发表于 06-11 17:18

    Kuikly鸿蒙版正式开源 —— 揭秘卓越性能适配之旅

    原生 IDE( Android Studio / VSCode ) 和原生性能分析工具,从业务代码到框架代码层,使用统一技术栈完成开发调试
    发表于 06-04 16:46

    如何解决Air780EPM开发中的调试难题?深度解析高效调试方法

    在Air780EPM项目开发中,调试效率往往直接影响进度。面对代码报错、逻辑漏洞等常见痛点,开发者亟需一套系统化的方法论。本文将揭秘实战中验证的调试技巧,助您快速定位问题并优化代码流程
    的头像 发表于 05-17 10:46 875次阅读
    如何解决Air780EPM<b class='flag-5'>开发</b>中的<b class='flag-5'>调试</b>难题?深度解析<b class='flag-5'>高效</b><b class='flag-5'>调试</b>方法

    最新 HUAWEI DevEco Studio 使用技巧

    最新 HUAWEI DevEco Studio 使用技巧 HUAWEI DevEco Studio 作为我们 harmonyos 应用的开发
    的头像 发表于 04-27 16:59 1512次阅读
    最新 HUAWEI <b class='flag-5'>DevEco</b> <b class='flag-5'>Studio</b> 使用技巧

    DevEco Studio 工具如何安装

    推送应用到真机运行 步骤 1将搭载 KaihongOS 系统的开发板与安装 DevEco Studio 的 PC 相连。 步骤 2应用添加自动签名,详见下一节DevEco
    发表于 04-24 07:38