OpenHarmony开发者论坛
标题:
OpenHarmony设备截屏的5种方式
[打印本页]
作者:
westinyang
时间:
2023-10-25 17:37
标题:
OpenHarmony设备截屏的5种方式
[md]> 关于作者:[I'm westinyang](
https://kaihongpai.feishu.cn/wiki/CqWLwJRadibxztkrIWZcogWxnXd
)
> 演示视频:
https://www.bilibili.com/video/BV1ju4y1U7uk
# 序言
早在今年3月初,刚接触OpenHarmony标准系统应用开发的时候,就搜索过如何通过命令的方式对OpenHarmony设备进行截图,搜索引擎找过很多次都没有自己想要的答案,经过不断的探索研究,总结以下几种截图方式。
# 方式1:系统控制中心
- 顶部下滑在控制中心里点击截屏
- 这种方式最普遍,截图后可到相册查看,不过要注意有些三方移植固件可能不支持这个功能
- 通过下面这条命令可以拉取设备截图目录到电脑上
```shell
hdc file recv /storage/media/100/local/files/Pictures/Screenshots
```
# 方式2:OHScrcpy投屏工具 `推荐`
> OHScrcpy是我在2023-06-03开发的一款OpenHarmony设备投屏PC的工具,目前最新版为1.0-Beta3,下面有视频演示、下载地址和相关话题
>
> - 1.0 Beta1:[OHScrcpy:OpenHarmony开源鸿蒙首款投屏工具横空出世~](
https://www.bilibili.com/video/BV1xz4y1q7S1
)
> - 1.0 Beta2:[OpenHarmony开源鸿蒙投屏工具OHScrcpy1.0-Beta2,支持点触交互](
https://www.bilibili.com/video/BV1W14y1o75Y
)
> - 1.0 Beta3:[OpenHarmony多屏协同OHScrcpy Beta3:键盘控制、滑动解锁](
https://www.bilibili.com/video/BV13N411q7FX
)
> - 下载地址:[
https://www.bilibili.com/read/cv24125018
](
https://www.bilibili.com/read/cv24125018
)
> - 相关话题:[
https://github.com/Genymobile/scrcpy/issues/4137
](
https://github.com/Genymobile/scrcpy/issues/4137
)
右键选择截屏或者按F1快捷键,如下图所示
![](data/attachment/forum/202310/25/171126wqqnnqk856ws6t3z.jpg "微信截图_20230724070828.jpg")
# 方式3:DevEcoStudio截屏功能
点击下方日志,再点击左下角设备截屏按钮即可
![](data/attachment/forum/202310/25/171158to888cmcpftgrpf1.png "微信截图_20230724071800.png")
# 方式4:hdc shell snapshot_display
> 一般质量jpeg
> 官方没有文档描述,通过反编译和分析DevEcoStudio部分jar包,看到内部的一些实现
```shell
hdc shell "snapshot_display -f /data/0.jpeg"
hdc file recv /data/0.jpeg
```
# 方式5:hdc shell wukong
> 高质量png
> wukong本来是OpenHarmony提供的一个稳定性测试工具,同时也附带的有截屏功能,[官方文档](
https://docs.openharmony.cn/page ... kong-guidelines.md/
)
```
hdc shell wukong special -p
```
执行上面的命令会输出如下内容
```log
PS C:\Users\westinyang\Desktop> hdc shell wukong special -p
Start connect to AAMS
Success connect to AAMS
INF : ( 115) EnvInit : "Report currentTestDir: (/data/local/tmp/wukong/report/20230724_072217/)"
INF : ( 120) EnvInit : "Report CSV: (/data/local/tmp/wukong/report/20230724_072217/wukong_report.csv)"
INF : ( 121) EnvInit : "Report JSON: (/data/local/tmp/wukong/report/20230724_072217/data.js)"
INF : ( 124) EnvInit : "Report exception dir: (/data/local/tmp/wukong/report/20230724_072217/exception/)"
INF : ( 92) StartCrashDirListen : create listener thread
INF : ( 94) StartCrashDirListen : thread detach
INF : ( 68) InitCsvFile : "CSV: (/data/local/tmp/wukong/wukong_20230724_072217.csv)"
INF : ( 55) ListenCrashDir : init notify
INF : ( 60) ListenCrashDir : add_watch
```
截屏就在这段输出中的 currentTestDir 目录中,使用如下命令拉取到电脑,注意这个路径是随机的
```shell
hdc file recv /data/local/tmp/wukong/report/20230724_072217/
```
# 持续关注
- 关于作者:[I'm westinyang](
https://kaihongpai.feishu.cn/wiki/CqWLwJRadibxztkrIWZcogWxnXd
)
- 哔哩哔哩:[个人主页](
https://space.bilibili.com/74433635
)
[/md]
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5