Lines Matching refs:hdc
1 # hdc chapter
3 hdc(OpenHarmony Device Connector)是为开发人员提供的用于调试的命令行工具,通过该工具可以在windows/linux/mac系统上与设备进行交互。
5 hdc分为三部分:
7 **client**:运行在电脑端的进程,开发者在执行hdc命令时启动该进程,命令结束后进程退出。
15 
18 > hdc client在启动时,默认会判断server是否正在运行,如果没有运行则会启动一个新的hdc程序作为server,运行在后台。
20 > hdc server运行时,默认会监听PC的8710端口,开发者可通过设置系统环境变量OHOS_HDC_SERVER_PORT自定义监听的端口号。
24 hdc工具通过OpenHarmony SDK获取,存放于SDK的toolchains目录下。
26 ### (可选)命令行直接执行hdc程序
28 开发者可通过命令行进入SDK的toolchains目录,在目录中执行hdc相关命令进行调试。
29 为了方便在命令行中直接执行hdc程序,开发者也可以将hdc程序文件路径添加到操作系统命令搜索路径的环境变量中。
34 hdc server启动时,默认会监听PC的8710端口,hdc client使用tcp协议通过此端口连接server。如果PC的8710端口已经被使用或者希望使用其他端口,可以通过添加环境变量OH…
41 ## hdc命令列表
45 全局参数是指运行部分hdc命令时,可以跟随在hdc后面的参数,例如:
49 hdc -t connect-key shell echo "Hello world"
78 | start | 启动hdc服务进程。 |
79 | kill | 终止hdc服务进程。 |
85 | <!--DelRow--> smode | 授予设备端hdc后台服务进程root权限, 使用-r参数取消授权(非root的设备不可用)。 |
87 | version | 打印hdc版本信息,也可使用hdc -v打印版本信息。 |
96 在使用hdc前,请在设备上开启usb调试功能,用usb线连接设备和PC。
101 hdc list targets
107 hdc shell echo "Hello world"
114 | -h [verbose] | 显示hdc相关的帮助信息。可选参数:verbose,显示详细的帮助信息。 |
115 | help | 显示hdc相关的帮助信息。 |
117 显示hdc相关的帮助信息,命令格式如下:
120 hdc -h [verbose]
121 hdc help
127 …nbsp; - Print hdc help, 'verbose' for more other cmds<br/>..._(此处省略详细…
132 hdc -h
133 hdc help
136 hdc -h verbose
141 - 使用hdc时如出现异常,可尝试通过hdc kill -r命令杀掉异常进程并重启hdc服务。
143 - 如出现hdc list targets获取不到设备信息的情况,参见[设备无法识别](#设备无法识别)章节。
154 hdc list targets [-v]
166 hdc list targets
167 hdc list targets -v
176 hdc -t [connect-key] [command]
182 | connect-key| 设备标识符,即为hdc list targets返回的信息。 |
183 | command | hdc支持的命令。 |
207 hdc list targets // 查询已连接的所有目标设备的connect-key
208 hdc -t [connect-key] shell // -t 后面添加的connect-key需要替换为指定的设备标识符
216 hdc wait // 等待设备正常连接
217 hdc -t connect-key wait // 等待指定的设备正常连接,connect-key需要替换为指定的设备标识符
223 | 无 | hdc wait命令执行后,识别到正常连接的设备后结束。 |
228 hdc wait
229 hdc -t connect-key wait
243 | hdc环境变量 | 终端命令行输入hdc -h有回显帮助信息内容 | 参见[环境准备章节](#环境准备)。 |
253 hdc list targets
258 3. 可以查询到设备后,即可运行设备相关命令和设备进行交互。如果希望不带设备标识符进行USB命令操作,需要确认设备不在tcp连接模式(hdc list targets查询的设备不包含IP:port形…
261 hdc shell
276 | hdc环境变量 | 终端命令行输入hdc -h有回显帮助信息内容 | 参见[环境准备章节](#环境准备)。 |
287 hdc tconn IP:PORT
294 hdc list targets
308 hdc client(客户端)在PC1中运行,hdc server(服务端)在PC2中运行,PC2中的hdc server连接设备。
319 hdc -s [ip]:[port] [command]
327 | command | hdc支持的命令。 |
339 hdc -s 127.0.0.1:8710 list targets
353 hdc kill // 关闭本地hdc服务
354 hdc -s IP:8710 -m // 启动网络转发的hdc服务
365 hdc -s IP:8710 [command] // 其中IP为服务端IP,8710为第一步服务端启动时设置的端口号,
367 // command可以为任意hdc可用命令,例如list targets
386 hdc tmode port [port-number]
404 hdc tmode port 1234
420 hdc tmode port close
431 hdc tmode port close
439 hdc tconn [IP]:[port] [-remove]
458 hdc tconn 192.168.0.1:8888
459 hdc tconn 192.168.0.1:8888 -remove // 断开指定网络设备连接
467 hdc shell [command]
473 …单次命令,不同类型或版本的系统支持的command命令有所差异,可以通过hdc shell ls /system/bin查阅支持的命令列表。当前许多命令都是由[toybox](../tools/t…
484 hdc shell ps -ef
485 hdc shell help -a // 查询全部可用命令
498 hdc install [-r|-s] src
519 hdc install E:\example.hap
525 hdc uninstall [-k|-s] packageName
546 hdc uninstall com.example.hello
559 hdc file send [-a|-sync|-z|-m] localpath remotepath
579 hdc file send E:\example.txt /data/local/tmp/example.txt
585 hdc file recv [-a|-sync|-z|-m] remotepath localpath
605 hdc file recv /data/local/tmp/a.txt ./a.txt
624 hdc fport ls
637 hdc fport ls
643 hdc fport localnode remotenode
656 hdc fport tcp:1234 tcp:1080
662 hdc rport remotenode localnode
675 hdc rport tcp:1234 tcp:1080
680 hdc fport rm taskstr
697 hdc fport rm tcp:1234 tcp:1080
704 | start [-r] | 启动hdc服务进程,使用-r参数触发服务进程重新启动。 |
705 | kill [-r] | 终止hdc服务进程,使用-r参数触发服务进程重新启动。 |
710 1. 启动hdc服务进程,命令格式如下:
713 hdc start [-r]
724 hdc start
725 hdc start -r // 服务进程启动状态下,触发服务进程重新启动
730 …> 当启动hdc服务进程且系统未检测到运行的服务进程时,日志等级的设置优先级如下:若同时指定了-l参数和配置了OHOS_HDC_LOG_LEVEL环境变量,则使用环境变量配置的日志等级;如果仅指定…
732 2. 终止hdc服务进程,命令格式如下:
735 hdc kill [-r]
747 hdc kill
748 hdc kill -r // 重启并终止服务进程
754 hdc -p [command]
760 | command | hdc支持的命令 |
771 hdc start
773 hdc -p list targets
783 hdc -m
796 hdc -s 127.0.0.1:8710 -m
809 | hilog [-h] | 打印设备端的日志信息,可通过hdc hilog -h查阅支持的参数列表。 |
815 | <!--DelRow--> smode [-r] | 授予设备端hdc后台服务进程root权限, 使用-r参数取消授权(设备root后支持此命令)。 |
820 hdc hilog [-h]
826 | [-h] | hilog支持的参数,可通过hdc hilog -h查阅支持的参数列表。 |
836 hdc hilog
842 hdc jpid
854 hdc jpid
879 hdc track-jpid
895 …| MODE | 重启后进入MODE模式,MODE为/bin/begetctl命令中reboot支持的参数。<br> 可通过hdc shell "/bin/begetctl -h \| grep …
900 hdc target boot -bootloader // 重启后进入fastboot模式
901 hdc target boot -recovery // 重启后进入recovery模式
902 hdc target boot shutdown // 关机
909 hdc target mount
921 hdc target mount
928 6. 授予设备端hdc后台服务进程root权限,命令格式如下:
931 hdc smode [-r]
943 hdc smode
944 hdc smode -r // 取消root权限
962 hdc keygen FILE
973 hdc keygen key // 在当前目录下生成key和key.pub文件
980 | -v/version | 打印hdc版本信息。 |
983 1. 显示hdc的版本信息,命令格式如下:
986 hdc -v/version
992 | Ver: X.X.Xa | hdc(SDK)的版本信息。 |
997 hdc -v 或 hdc version
1003 hdc checkserver
1014 hdc checkserver
1017 ## hdc调试日志
1023 hdc运行时日志等级,默认为LOG_INFO,命令格式如下:
1026 hdc -l [level] [command]
1033 | command | hdc支持的命令。 |
1051 hdc -l 5 shell ls
1057 hdc kill && hdc -l 6 -m
1066 hdc kill && hdc -l 6 start
1070 > 以后台模式启动,可以在hdc.log中观察日志输出,日志路径可以查看**日志获取**章节的描述。
1077 hdc kill
1078 hdc -l5 start
1085 | Windows | %temp%\hdc.log | 实际路径参考,实际使用请替换用户名变量<br/>C:\Users\用户名\AppData\Local\Temp\hdc.log。 |
1086 | Linux | /tmp/hdc.log | - |
1087 | MacOS | $TMPDIR/hdc.log | - |
1110 hdc shell hilog -w start // 开启hilog日志落盘
1111 hdc shell ls /data/log/hilog // 查看已落盘hilog日志
1112 hdc file recv /data/log/hilog // 获取hilog已落盘日志(包含内核日志)
1121 命令行执行`hdc list targets`命令后,返回结果为`[empty]`。
1158 - 如可通过TCP模式连接,可执行`hdc tmode usb`命令恢复USB连接。
1179 现象描述:命令行执行hdc相关命令,执行失败返回`[Fail]Failed to communicate with daemon`。
1183 - hdc或SDK版本与设备不匹配: 如果设备更新到最新版本,可更新hdc或SDK工具至最新版本。
1186 …常见于hdc和hdc_std使用同一端口,同时运行时OHOS_HDC_SERVER_PORT设置的端口互相冲突(未设置则使用默认端口8710,仍然会冲突),注意只运行其中一个。其他软件占用hdc默…
1195 1. 排查自带hdc的软件进程。
1197 包括自带hdc的软件(DevEco Studio、DevEco Testing),如存在请关闭这些软件后再执行hdc相关命令。
1217 3. 排查未关闭的其他版本hdc server。
1221 …理器`>`详细信息`查询hdc.exe进程,右键打开文件所在位置,核对位置是否为配置的环境变量中的hdc文件位置,如果不一致,可尝试结束hdc.exe进程(hdc kill或者任务管理器直接结束进…
1225 …-ef |grep hdc`查询hdc后台server进程,核对进程启动位置是否为配置的环境变量中的hdc文件位置,如果不一致,可尝试结束hdc进程(hdc kill或者kill -9 hdc进程…
1243 **linux系统非root权限运行hdc无法找到设备**
1275 > **开启非root用户USB设备操作权限**可以解决Linux环境在非root权限下使用hdc无法找到设备的情况,但权限最大化**可能存在潜在安全问题**,请开发者根据使用场景自行评估是否开启。
1279 ### hdc无法运行
1283 使用命令行执行hdc.exe/hdc 二进制文件无法运行。
1295 - 运行方式不当:请使用命令行依照正确命令运行hdc工具,而非鼠标双击文件。
1299 1. 命令行执行`hdc list targets`查看返回值。
1301 3. 执行`hdc kill`关闭server后,执行`hdc -l5 start`收集日志(hdc.log位于执行端TEMP目录,不同平台目录位置存在差异,可参考[server端日志](#serv…
1302 4. 通过hdc.log日志定位相关问题。