OpenHarmony命令行调试工具hdc_std介绍

今天有人问dayu200可以用hdc工具吗?突然发现,我还没用过,于是就有了这篇文章

hdc_std是什么?

hdc_std是OpenHarmony提供的用于调试的命令行工具,通过该工具可以在Windows/Linux等系统上与开发机或者模拟器进行交互。 目前,OpenHarmony不再提供编译好的hdc_std,需要开发者拉取该工具的源码自行编译。

但是这种方式目前并不是最好的一种方案,

hdc_std下载与配置

最省事的还是我们可以从每日构件中下载相匹配的SDK中提取hdc。

我们选择富设备,编译状态是成功的,然后版本是Master_Version,版本名称这里需要注意的是可以检查dayu200开发板关于那一栏的版本信息一致。然后下载

image-20220927225035862

解压从每日构建里下载好的匹配的OHOS SDK并找到hdc工具
hdc_std工具在sdk目录:

toolchainsohos-sdk\toolchains

image-20220927232209012

我们将它添加到path环境变量中,不然就会出现下面的报错

image-20220927232806182

我的安装路径D:\ohos-sdk\windows\toolchains

添加之后打开hdc_std工具

image-20220927233428494

hdc_std工具安装应用到开发板

将编译好的hap包用hdc_std工具安装到开发板上

编译好的文件的目录是:

应用源码目录\entry\build\default\outputs\default

如图所示:

image-20220927224303727

在cmd中输入hdc命令安装hap包到开发板上
在命令行输入:

hdc_std install -r hap包绝对路径\entry-default-signed.hap

hdc主要有三部分组成:

  1. hdc client部分:运行于开发机上的客户端,用户可以在开发机命令终端(windows cmd/linux shell)下请求执行相应的hdc命令,运行于开发机器,其它的终端调试IDE也包含hdc client。
  2. hdc server部分:作为后台进程也运行于开发机器,server管理client和设备端daemon之间通信包括连接的复用、数据通信包的收发,以及个别本地命令的直接处理。
  3. hdc daemon部分:daemon部署于OpenHarmony设备端作为守护进程来按需运行,负责处理来自client端的请求。

常用命令

查看工具版本

image-20220927234259719

查看工具帮助

image-20220927234351239

常见问题:

1.hdc_std list targets 查找不到设备

  • 检查PC上设备管理器中usb驱动是否正常,如果没有正常显示,可能是PC环境问题,或者usb线路连接问题。

  • 检查PC上的hdc_std工具版本和开发板上hdcd版本是否一致。

2.从PC拷入文件到开发板失败

  • 可能目标目录只读,更换其他可读写目录尝试一下

3.从开发板拷出文件到PC失败

  • 可能是磁盘根目录没有权限,建议建一个文件夹,然后拷贝到文件夹下

参考资料:

developtools_hdc_standard: Device debug connector that provides the device connection capability and a command line tool | 设备调试连接器,提供了连接设备的能力,并提供了对外的命令行工具 (gitee.com)

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐