• OpenHarmony命令行工具hdc_std使用总结


            HDC,全称 HarmonyOS Device Connector,是HarmonyOS提供的方便开发人员调试的命令行工具,使用该工具可以在个人电脑与设备或模拟器之间进行交互通讯。

            hdc_std,与hdc相似,但它是OpenHarmony提供的用于开发人员调试的命令行工具,专门用在个人电脑与开发板之间的交互,并且这个开发板是需要运行OpenHarmony标准版(standard)系统的,所以在hdc后面加了std后缀以示区分。

            简言之,手机上调试用的是hdc,开发板上调试用的是hdc_std,一个不开源,一个开源。

    环境准备:

            以window10电脑和RK3399开发板为例。

            PC上安装了DevEco Studio 3.0版本,安装过程中根据要求自动安装了OpenHarmonySDK。

    PC与开发板通过usb调试线连接,开发板上运行OpenHarmony3.0标准版系统。

    正常情况,应该打开cmd窗口就可以运行hdc_std命令了,如果找不到,在系统环境变量path中添加hdc_std所在路径,例如,作者的hdc_std工具所在目录为。

    C:\Users\username\AppData\Local\OpenHarmony\Sdk\toolchains 。

    命令介绍:

    查看工具版本

    D:\>hdc_std -v Ver: 1.1.1k

    查看工具帮助

    D:\>hdc_std -h

    查看已连接设备

    D:\>hdc_std list targets 150100384

    查看连接设备详细信息

    D:\>hdc_std list targets -v 15010038475 USB Connected localhost

    进入命令行交互环境

    D:\>hdc_std shell # ls bin data etc lib proc system vendor config dev init lost+found sys updater

    从PC拷入文件到开发板

    D:\>hdc_std file send d:\entry-debug-standard-ark-signed.hap /data/tmp/ FileTransfer finish, Size:65430 time:23ms rate:2551.92kB/s

    从开发板拷出文件到PC

    E:\>hdc_std file recv /data/tmp/entry-debug-standard-ark-signed.hap d:\recv\entry-debug-standard-ark-signed.hap FileTransfer finish, Size:56530 time:51ms rate:2212.75kB/s

    安装HAP应用

    D:\>hdc_std install entry-debug-standard-ark-signed.hap [Info]App install path:D:\entry-debug-standard-ark-signed.hap, queuesize:0, msg:install bundle successfully. AppMod finish

    重新安装HAP应用

    D:\>hdc_std install -r entry-debug-standard-ark-signed.hap [Info]App install path:D:\entry-debug-standard-ark-signed.hap, queuesize:0, msg:install bundle successfully. AppMod finish

    通过install -r执行重新安装,与卸载再安装效果一样。

    卸载已安装应用

    D:\>hdc_std uninstall com.example.ohhelloworld [Info]App uninstall path:, queuesize:0, msg:uninstall bundle successfully. AppMod finish

    uninstall 后面跟的是要卸载的应用的包名。

    启动已安装应用

    D:\>hdc_std shell aa start -a com.example.ohhelloworld.MainAbility -b com.example.ohhelloworld start ability successfully.

    -a 后面是Ability的完整名字

    -b 后面是Bundle的完整名字

    查看日志

    D:\>hdc_std hilog

    重新挂载/vendor和/system分区为可读写

    D:\>hdc_std target mount Mount finish

    重新启动hdc服务进程

    D:\>hdc_std start -r

    终止hdc服务进程

    D:\>hdc_std kill Kill server finish

    重启设备

    D:\>hdc_std target boot

    常见问题:

    1.hdc_std list targets 查找不到设备

    • 检查PC上设备管理器中usb驱动是否正常,如果没有正常显示,可能是PC环境问题,或者usb线路连接问题。
    • 检查PC上的hdc_std工具版本和开发板上hdcd版本是否一致。

    PC上执行:

    D:\>hdc_std -v Ver: 1.2.1k

    开发板上执行,

    # hdcd -v Ver: 1.2.1k

    如果版本不一致,建议更新较低版本一端软件为较新版本。

    • 尝试重启PC本地hdc服务

    D:\>hdc_std start -r

    • 杀掉本地服务并重启

    D:\>hdc_std kill -r

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

    D:\>hdc_std file send d:\entry-debug-standard-ark-signed.hap /system/ [Fail]Error opening file: read-only file system, path:/system//entry-debug-standard-ark-signed.hap

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

    D:\>hdc_std file send d:\entry-debug-standard-ark-signed.hap /data/ FileTransfer finish, Size:230 time:21286ms rate:321.13kB/s

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

    D:\>hdc_std file recv /data/tmp/entry-debug-standard-ark-signed.hap d:\ [Fail]Error opening file: operation not permitted, path:d:\\entry-debug-standard-ark-signed.hap

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

    D:\>hdc_std file recv /data/tmp/entry-debug-standard-ark-signed.hap d:\recv FileTransfer finish, Size:65520 time:60ms rate:1221.53kB/s

  • 相关阅读:
    计算机毕业设计java+ssm医院医疗救助系统的设计与实现
    openEuler学习——部署MGR集群
    051校园短期闲置资源置换平台
    (附源码)计算机毕业设计SSM基于课程群的实验管理平台
    Direct3D网格(一)
    云开发静态网站H5跳转小程序(记录过程)以及云环境共享(同一主体)
    外汇天眼:Bitcore与Amtop Markets Ltd──诓称数据分析操盘稳赚不赔,指控账户违法逼缴校验金
    【软件应用开发】基于SSM框架的共享云盘系统设计与实现
    Mysql高级20-性能分析
    linux检测系统是否被入侵(上)
  • 原文地址:https://blog.csdn.net/fanyun_01/article/details/128103289