调试OpenHarmony应用/服务

调试流程

DevEco Studio提供了丰富的OpenHarmony应用/服务调试能力,帮助开发者更方便、高效的调试应用/服务。

OpenHarmony应用/服务调试支持使用真机设备调试。使用真机设备进行调试前,需要对HAP进行签名后进行调试。详细的调试流程如下图所示:

配置签名信息

DevEco Studio为开发者提供了自动化签名方案,可以一键完成应用/服务签名。具体操作如下:

单击File > Project Structure > Project > Signing Configs 界面勾选"Automatically generate signature ",等待自动签名完成即可,单击"OK "。如下图所示:

调试设置

设置调试代码类型

OpenHarmony支持ArkTS、JS和C/C++代码调试,默认情况下调试器支持的调试类型为Detect Automatically。调试类型包括如下几种:

表1 调试类型配置项

修改调试类型的方法如下。

点击Run > Edit Configurations > Debugger ,在OpenHarmony App中,选择相应模块,设置Debug type即可。

设置HAP安装方式

在调试阶段,HAP在设备上的安装方式有2种,可以根据实际需要进行设置。

  • 安装方式一:先卸载应用/服务后,再重新安装,该方式会清除设备上的所有应用/服务缓存数据(默认安装方式)。
  • 安装方式二:采用覆盖安装方式,不卸载应用/服务,该方式会保留应用/服务的缓存数据。

设置方法如下:

单击Run > Edit Configurations ,设置指定模块的HAP安装方式,勾选 Keep Application Data ,则表示采用覆盖安装方式,保留应用/服务缓存数据。

设置多HAP安装

如果工程中同时存在多个模块,且您的应用/服务存在跨模块间的调用时,在调试阶段需要同时安装多个模块的HAP到设备中。此时,需要在Deploy Multi Hap中选择多个模块,启动调试时,DevEco Studio会将所有的模块都安装到设备上。

设置方法如下:

单击Run > Edit Configurations ,在Deploy Multi Hap 中,勾选Deploy Multi Hap Packages ,选择多个模块。

1.在启动调试时,请选择勾选了Deploy Multi Hap Packages 的模块(如上图中的entry),然后再启动调试。

说明

Debug和Attach Debugger的区别在于,Attach Debugger to Process需要先运行应用/服务,然后再启动调试,或者直接启动设备上已安装的应用/服务进行调试;而Debug是直接运行应用/服务后立即启动调试。

2.如果需要设置断点调试,则需要选定要设置断点的有效代码行,在行号(比如:第5行)的区域后,单击鼠标左键设置断点(如图示的红点)。

设置断点后,调试能够在正确的断点处中断,并高亮显示该行。

3.启动调试后,开发者可以通过调试器进行代码调试。调试器的功能说明如下表所示:

表2 调试器按钮

断点管理

在设置的程序断点红点处,单击鼠标右键,然后单击More 或按快捷键Ctrl+Shift+F8 (macOS为Shift+Command+F8 ),可以管理断点。

表3 不同代码类型的断点管理功能

要想成为一名合格的鸿蒙高级开发工程师,以上知识点是必须要掌握的,除此之外,还需要掌握一些鸿蒙应用开发相关的一些技术

为了节省大家一些查找的时间,这边联合几位行业大佬,为大家准备了一份《鸿蒙全栈技术 实战项目驱动式教学》的学习导图,从入门到进阶再到南北向开发实战的一整套完整体系,想要学习了解更多鸿蒙开发的相关知识可以借鉴:鸿蒙4.0源码开发架构分析pdf

除了上面整理的思维导图以外,这里还特别整理的一份《鸿蒙 (Harmony OS)开发学习手册》给大家进行参考学习:

一、入门必看

1.应用开发导读(ArkTS)

2.......

二、HarmonyOS 概念

1.系统定义

2.技术架构

3.技术特性

4.系统安全

5...
三、如何快速入门?《鸿蒙HarmonyOS分布式项目实战

1.基本概念

2.构建第一个ArkTS应用

3.构建第一个JS应用

4.......

四、开发基础知识

1.应用基础知识

2.配置文件

3.应用数据管理

4.应用安全管理

5.应用隐私保护

6.三方应用调用管控机制

7.资源分类与访问

8.学习ArkTS语言

9.......

五、基于ArkTS 开发

1.Ability开发

2.UI开发

3.公共事件与通知

4.窗口管理

5.媒体

6.安全

7.网络与链接

8.电话服务

9.数据管理

10.后台任务(Background Task)管理

11.设备管理

12.设备使用信息统计

13.DFX

14.国际化开发

15.折叠屏系列

16.......

更多了解更多鸿蒙开发的相关知识可以参考:一小时快速认识HarmonyOS

相关推荐
liulilittle5 分钟前
TCP BBR调优及监控
linux·网络·网络协议·tcp/ip·win
金玉满堂@bj19 分钟前
Inspect.exe:Windows 桌面自动化的定位利器与 Pywinauto 实战
运维·windows·自动化
土星云SaturnCloud22 分钟前
边缘计算赋能工业智能化:重大危险源监测+产线控制+视觉分析一体化解决方案
服务器·人工智能·ai·边缘计算
handler0122 分钟前
TCP(传输控制协议)核心机制与底层原理
linux·网络·c++·笔记·网络协议·tcp/ip·操作系统
运维全栈笔记30 分钟前
Harbor生产级部署实战:PostgreSQL+Redis+MinIO全解耦架构详解
linux·运维·服务器·笔记·架构·kubernetes·k8s
W230357657331 分钟前
Linux C++ 基于 timerfd + epoll 实现高性能定时器队列(完整源码 + 超详细解析)
linux·开发语言·c++·线程池
wanhengidc33 分钟前
云手机中虚拟技术的功能
运维·服务器·网络·安全·web安全·智能手机
前端不太难34 分钟前
一套鸿蒙 App,如何跑在手机 / 平板 / TV?
智能手机·电脑·harmonyos
皓月盈江36 分钟前
Linux Ubuntu系统使用Docker搭建vulhub靶场环境
linux·ubuntu·docker·tomcat·vulhub·漏洞靶场
念恒1230642 分钟前
Docker基础--namespace空间隔离实战(包含部分指令)
linux·运维·服务器