1 关键字

hdc;传输

2 问题描述

设备型号:dayu200

系统版本:OpenHarmony 3.1 Release

代码版本:OpenHarmony-v3.1-Release

3 问题原因

3.1 正常机制

使用hdc工具,向oh设备传输文件,log提示传输成功,在设备文件中夹收到传输文件。

3.2 异常机制

使用hdc工具,向oh设备传输文件,log提示传输成功,但是在设备文件夹下没有传输的文件。

4 解决方案

hdc工具使用过程中碰到问题,可以参考如下流程自助排查:

  • step1: 先检查pc(host)端hdc_std 和L2设备端hdcd版本是否一致(-v 查看版本):

    • step1a: 版本不一致请更新使用一致版本再验证;

    • step1b: 版本一致请继续下面排查step2步骤;

  • step2: 检查pc(host)端设备管理器设备信息是否正常(设备是否正常加载显示、驱动、id是否正常):

    • step2a: 设备管理器设备异常或无设备, 请结合板测试设备端串口下确认下usb部分设备枚举上报是否异常;

    • step2b: 设备管理器设备正常时, 1)list targets 是否正常;2)hdc_std kill 后重试是否正常;

注意:客户端和设备端版本保持一致(-v参数查看版本)!

4.1命令帮助

hdc当前常用命令如下,可使用命令hdc -h或者hdc --help查看:

表 1 hdc常用命令列表

Option Description
-t key 用于指定连接该指定设备识Key举例:hdc -t *(设备id) shell
-s socket 用于指定服务监听的socket配置举例:hdc -s ip:port
-h/help -v/version 用于显示hdc相关的帮助、版本信息
list targets[-v] 显示所有已经连接的目标设备列表,-v选项显示详细信息举例: hdc list targets
target mount 以读写模式挂载/system等分区举例: hdc target mount
smode [off] 授予后台服务进程root权限, 使用off参数取消授权举例: hdc smode
kill [-r] 终止hdc服务进程, -r选项会触发再次重启hdc server举例: hdc kill
start [-r] 启动hdc服务进程, -r选项会触发重启hdc server举例: hdc start
tconn host:port 通过【ip地址:端口号】来指定连接的设备举例: hdc tconn 192.168.0.100:10178
tmode usb 执行后设备端对应daemon进程重启,并首先选用usb连接方式
tmode port port-number 执行后设备端对应daemon进程重启,并优先使用网络方式连接设备,如果连接设备再选择usb连接
file send local remote 从host端发送文件至设备端举例: hdc file send E:\a.txt /data/local/tmp/a.txt
file recv [-a] remote local 从设备端拉出文件至本地host端举例: hdc file recv /data/local/tmp/a.txt ./a.txt
install [-r/-d/-g] package 安装OpenHarmony package举例: hdc install E:***.hap
uninstall [-k] package 卸载OpenHarmony应用
hilog 支持查看抓取hilog调试信息举例: hdc hilog
shell [command] 远程执行命令或进入交互命令环境举例: hdc shell

以下是常用hdc命令示例,供开发者参考:

  • 查看设备连接信息

    hdc list targets
  • 往设备中推送文件

    hdc file send  E:\a.txt  /data/local/tmp/a.txt
  • 从设备中拉取文件

    hdc file recv  /data/local/tmp/a.txt   ./a.txt
  • 安装应用

    hdc install E:\***.hap
  • 查看日志

    hdc hilog
  • 进入命令行交互模式

    hdc shell
  • 网络连接。

    hdc tconn 192.168.0.100:8710

    5 定位过程

    5.1 pc hdc版本1.1.1L 2.oh 设备版本1.1.1K 3.传输到 /data 目录下,data目录可读可写,附件为传输log

    • step1: 先检查pc(host)端hdc_std 和L2设备端hdcd版本是否一致(-v 查看版本):

    • step1a: 版本不一致请更新使用一致版本再验证;

    • step1b: 版本一致请继续下面排查step2步骤;

    • step2: 检查pc(host)端设备管理器设备信息是否正常(设备是否正常加载显示、驱动、id是否正常):

    • step2a: 设备管理器设备异常或无设备, 请结合板测试设备端串口下确认下usb部分设备枚举上报是否异常;

    • step2b: 设备管理器设备正常时, 1)list targets 是否正常;2)hdc_std kill 后重试是否正常;

    6 知识分享

    遇到同类问题要注意总结归纳

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐