HarmonyOS鸿蒙Next中如何使用命令行快速截图调试设备并保存至电脑?

HarmonyOS鸿蒙Next中如何使用命令行快速截图调试设备并保存至电脑? 如何使用命令行快速截图调试设备并保存至电脑?

3 回复

HDC 的 shell 命令让我们能直接进入设备的 Linux 环境快速的实现截图的脚本

1.基础用法:

# 1. 截图并保存到手机临时目录
hdc shell snapshot_display -f /data/local/tmp/snap.jpeg

# 2. 拉取到电脑
hdc file recv /data/local/tmp/snap.jpeg ./

2.懒人脚本:一键截图到桌面 (Windows)

每次敲两行命令太麻烦?创建一个 snap.bat 文件,双击即可将截图自动保存到桌面的 Snapshot 文件夹,并以时间戳命名。

@echo off
setlocal

echo ==========================================
echo        HarmonyOS One-Click Snapshot
echo ==========================================

:: 1. 设置保存路径为桌面 Snapshot 文件夹
set "SAVE_DIR=%USERPROFILE%\Desktop\Snapshot"
if not exist "%SAVE_DIR%" mkdir "%SAVE_DIR%"

:: 2. 生成时间戳文件名 (格式:snap_YYYYMMDD_HHMMSS.jpeg)
set "FILENAME=snap_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%.jpeg"
set "FILENAME=%FILENAME: =0%"

:: 3. 执行截图 -> 拉取 -> 清理
echo [1/3] Taking snapshot on device...
hdc shell snapshot_display -f /data/local/tmp/%FILENAME%

echo [2/3] Pulling to PC...
hdc file recv /data/local/tmp/%FILENAME% "%SAVE_DIR%\"

echo [3/3] Cleaning up temp file...
hdc shell rm /data/local/tmp/%FILENAME%

echo.
echo [Success] Saved to: %SAVE_DIR%\%FILENAME%
timeout /t 3 >nul

更多关于HarmonyOS鸿蒙Next中如何使用命令行快速截图调试设备并保存至电脑?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,可通过hdc命令截图并保存到电脑。

  1. 连接设备后,使用hdc shell snapshot_display -f /data/screenshot.png在设备端生成截图。
  2. 通过hdc file recv /data/screenshot.png ./将截图拉取到电脑当前目录。

确保hdc工具已配置,设备调试模式已开启。

在HarmonyOS Next开发中,可以通过ADB(Android Debug Bridge)命令行工具快速对连接的调试设备进行截图,并直接保存到电脑。这是最直接和标准的调试方法。

核心命令如下:

adb shell screencap -p /sdcard/screenshot.png
adb pull /sdcard/screenshot.png ~/Desktop/
adb shell rm /sdcard/screenshot.png

命令分步解释:

  1. adb shell screencap -p /sdcard/screenshot.png

    • 在设备端执行screencap命令,-p参数指定以PNG格式保存截图。
    • 截图文件将临时保存在设备的/sdcard/目录下,文件名为screenshot.png
  2. adb pull /sdcard/screenshot.png ~/Desktop/

    • 将设备上的截图文件拉取(下载)到电脑。
    • ~/Desktop/是目标路径示例(电脑的桌面),你可以将其替换为任何电脑上的有效路径,例如D:\HarmonyScreenshots\
  3. adb shell rm /sdcard/screenshot.png

    • (可选)删除设备上的临时截图文件,以释放设备存储空间。

为了更高效,可以将上述命令合并为一行:

adb shell screencap -p | sed 's/\r$//' > screenshot.png

这个命令的原理是:将设备端screencap命令输出的原始PNG数据流通过管道传输到电脑,并使用sed命令处理Windows换行符问题,最后直接重定向输出到电脑当前目录下的screenshot.png文件。这个命令不需要在设备上创建临时文件,速度更快,是推荐的方法。

前提条件:

  1. 已在电脑上安装并配置好HarmonyOS SDK,其platform-tools目录中包含adb工具。
  2. 调试设备(真机或模拟器)已通过USB连接或网络连接到电脑。
  3. 设备已开启“开发者选项”和“USB调试”模式。
  4. 在命令行终端中,执行adb devices命令可以正确列出你的设备。

操作步骤:

  1. 打开电脑的命令行终端(如Windows的CMD/PowerShell, macOS/Linux的Terminal)。
  2. 确保终端的工作目录已包含adb命令,或已将其路径添加到系统环境变量。
  3. 执行上述任一截图命令即可。

使用命令行截图是自动化测试和高效调试的常用手段,可以方便地集成到脚本中。

回到顶部