鸿蒙开发之hdc命令行

2023-12-23 16:04
文章标签 开发 命令行 鸿蒙 hdc

本文主要是介绍鸿蒙开发之hdc命令行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、简介

hdc(HarmonyOS Device Connector)是HarmonyOS为开发人员提供的用于调试的命令行工具,通过该工具可以在windows/linux/mac系统上与真实设备进行交互。

二、环境准备

hdc工具通过HarmonyOS SDK获取,存放于SDK的toolchains目录下,使用时将SDK的toolchains目录添加到环境变量。

Windows环境变量设置方法

此电脑 > 属性 > 高级系统设置 > 高级 > 环境变量中,添加HDC端口变量名为:HDC_SERVER_PORT,变量值可设置为任意未被占用的端口,如7035。

image.png
环境变量配置完成后,关闭并重启DevEco Studio。

macOS环境变量设置方法:

打开终端工具,执行以下命令,根据输出结果分别执行不同命令。

echo $SHELL

如果输出结果为/bin/bash,则打开.bash_profile文件。如果输出结果为/bin/zsh,则打开.zshrc文件。然后在对应的文件中输入以下内容:

export PATH=$PATH:/Users/xxx/Library/Huawei/sdk/hmscore/3.1.0/toolchains
export HDC_SERVER_PORT=7035
export OHPM_HOME=/Users/xxx/Library/Huawei/ohpm
export PATH=${OHPM_HOME}/bin:${PATH}

环境变量配置完成后,关闭并重启DevEco Studio。

注意事项

  • 使用hdc,如果出现异常,可以尝试通过hdc kill -r命令杀掉并重启hdc服务。
  • 如果出现hdc list targets获取不到设备信息的情况,可以通过任务管理器查看是否有hdc进程存在。若进程存在,则通过hdc kill -r命令杀掉该进程。

说明

  • 命令行中被[]修饰的参数表示可选参数。
  • 命令行中的参数若是斜体,表示在使用时该参数需替换为具体的信息,例如:file send local remote命令中的local和remote,使用时需替换为本地待发送和远端待接收的文件路径。

三、开发指导

全局option

Option说明
-t [key] [command]指定连接唯一标识的目标设备。
-h打印hdc帮助信息。
-v打印hdc版本信息。
-n/-c- 手机/平板镜像为3.1及以上版本时,如果开发者需要操作(安装/卸载等)API 9的应用,使用 -n或不带 -n;
  • 手机/平板镜像为3.1及以上版本时,如果开发者需要操作(安装/卸载等)应用为API 8及以下版本,使用 -c;

  • 手机/平板镜像为3.1之前版本,如果开发者需要操作(安装/卸载等)应用为API 8及以下版本,使用 -c。 |

  • hdc -h:用于显示hdc相关的帮助信息。

  • hdc -v:用于显示hdc的版本信息。

  • hdc -t [key] [command]:连接设备时,若仅有一台,无需指定设备标识。若有多台,一次仅能连接一台,每次连接时需要指定连接设备的标识。

参数说明:

参数说明
keyIP地址或USB序列号。
commandhdc支持的命令。

查询相关命令行

命令说明
help打印hdc帮助信息。
version打印hdc版本信息。
list targets [-v]查询已连接的所有目标设备,添加-v选项,则会打印设备详细信息。

显示所有已经连接的设备列表,命令格式如下:

hdc list targets[-v]

返回值若没有查询到设备信息,返回[Empty]。若查询到已经连接的的设备,返回设备列表。

服务进程相关命令

命令说明
target mount读写模式挂载系统分区。
target boot重启目标设备,查看目标列表可用list targets命令。
smode [off]授予设备端hdc后台服务进程root权限, 使用off参数取消授权。
kill终止hdc服务进程。

1,读写模式挂载系统分区,命令格式如下:

hdc target mount

挂载成功,返回remount succeeded。挂载失败,返回具体的失败信息。

2,授予设备端hdc后台服务进程root权限,命令格式如下:

hdc smode [off]

3,终止hdc服务进程,命令格式如下:

hdc kill [-r]

服务进程终止成功,无返回值;服务进程终止失败,返回具体的失败信息。

网络相关命令

命令说明
fport ls展示全部“端口转发主机端口转发数据到设备侧端口”的转发任务。
fport local remote端口转发主机端口转发数据到设备侧端口。
fport rm local remote删除指定“端口转发主机端口转发数据到设备侧端口”的转发任务。
rport ls展示全部“端口转发设备侧端口转发数据到主机端口”的转发任务
rport local remote端口转发设备侧端口转发数据到主机端口
rport rm local remote删除指定“端口转发设备侧端口转发数据到主机端口”的转发任务

文件相关命令

命令说明
file send local remote从本地发送文件至远端设备。
file recv remote local从远端设备发送文件至本地。

1,从本地发送文件至远端设备,命令格式如下

hdc file send local remote

文件发送成功,返回传输成功的结果信息;文件发送失败,返回传输失败的具体信息。

2,从远端设备发送文件至本地,命令格式如下:

hdc file recv remote local

文件接收成功,返回传输成功的结果信息。文件接收失败,返回传输失败的具体信息。

app相关命令

命令说明
install packageFile安装指定的应用package文件。
uninstall packageName卸载指定的应用包package包名。

1,安装HarmonyOS package,命令格式如下:

hdc install packageFile

packageFile安装成功,无返回值;packageFile安装失败,返回具体的失败信息。

2,卸载HarmonyOS应用,命令格式如下:

hdc uninstall packageName

packageName卸载成功,无返回值;packageName卸载失败,返回具体的失败信息。

调试相关命令

命令说明
shell [COMMAND]交互命令,COMMAND表示需要执行的单次命令。不同类型或版本的系统支持的COMMAND命令有所差异,可以通过hdc shell ls /system/bin查阅支持的命令列表。
jpid显示可调试应用列表。
track-jpid动态显示可调试应用列表。
hilog [options]打印设备端的日志信息,options表示hilog支持的参数,可通过hdc hilog -h查阅支持的参数列表 。

1,抓取log信息,命令格式如下:

hdc hilog [options]

此命令会返回抓取到的日志信息。

2,交互命令,命令格式如下:

hdc shell [COMMAND]

此命令会返回shell后面执行命令的结果信息。

这篇关于鸿蒙开发之hdc命令行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/528609

相关文章

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

基于Python开发PPTX压缩工具

《基于Python开发PPTX压缩工具》在日常办公中,PPT文件往往因为图片过大而导致文件体积过大,不便于传输和存储,所以本文将使用Python开发一个PPTX压缩工具,需要的可以了解下... 目录引言全部代码环境准备代码结构代码实现运行结果引言在日常办公中,PPT文件往往因为图片过大而导致文件体积过大,

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char