本文转载自《OpenHarmony设备截屏的5种方式 》,作者westinyang

目录

● 方式1:系统控制中心

● 方式2:OHScrcpy投屏工具 `推荐`

● 方式3:DevEcoStudio截屏功能

● 方式4:hdc shell snapshot_display

● 方式5:hdc shell wukong

● 持续关注

演示视频:https://www.bilibili.com/video/BV1ju4y1U7uk

方式1:系统控制中心

● 顶部下滑在控制中心里点击截屏

● 这种方式最普遍,截图后可到相册查看,不过要注意有些三方移植固件可能不支持这个功能

● 通过下面这条命令可以拉取设备截图目录到电脑上

hdc file recv /storage/media/100/local/files/Pictures/Screenshots

  

方式2:OHScrcpy投屏工具 推荐

OHScrcpy是我在2023-06-03开发的一款OpenHarmony设备投屏PC的工具,目前最新版为1.0-Beta2,Beta3还在开发中,下面有视频演示、下载地址和相关话题

● 1.0 Beta1:

● OHScrcpy:OpenHarmony开源鸿蒙首款投屏工具横空出世~

● 1.0 Beta2:OpenHarmony开源鸿蒙投屏工具OHScrcpy1.0-Beta2,支持点触交互

● 下载地址:https://www.bilibili.com/read/cv24125018

● 相关话题:https://github.com/Genymobile/scrcpy/issues/4137

右键选择截屏或者按F1快捷键,如下图所示

方式3:DevEcoStudio截屏功能

点击下方日志,再点击左下角设备截屏按钮即可

方式4:hdc shell snapshot_display

一般质量jpeg

官方没有文档描述,通过反编译和分析DevEcoStudio部分jar包,看到内部的一些实现

hdc shell "snapshot_display -f /data/0.jpeg"
hdc file recv /data/0.jpeg

  

方式5:hdc shell wukong

高质量png

wukong本来是OpenHarmony提供的一个稳定性测试工具,同时也附带的有截屏功能,官方文档

hdc shell wukong special -p

  

执行上面的命令会输出如下内容

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 目录中,使用如下命令拉取到电脑,注意这个路径是随机的

hdc file recv /data/local/tmp/wukong/report/20230724_072217/

  

持续关注

● OpenHarmony开发者社区(非官方阵地):https://gitee.com/ohos-dev 感兴趣的小伙伴们,可以关注或申请加入

● Bilibili:https://space.bilibili.com/74433635 投稿OpenHarmony应用开发和相关技术教程

OpenHarmony设备截屏的5种方式的更多相关文章

  1. 在mac上截屏的几种方式

    方法 1: 对屏幕的一部分进行截图 按下Command+Shift+4   方法 2: 对整个屏幕进行截图 按下Command+Shift+3   方法 3: 把截图保存到粘贴板 按下Command+ ...

  2. Android截屏的几种实现

    Android截屏的几种实现 微信公众号:CodingAndroid CSDN:http://blog.csdn.net/xinpengfei521 最近我们的APP要求需要截屏功能,网上看了看大致有 ...

  3. Xamarin Android Activity全屏的两种方式

    方式一 直接在Activity的Attribute中定义 如下 在 MainActivity 中 [Activity(Label = "app", MainLauncher = t ...

  4. Android实现全屏的三种方式

    一.通过代码 requestWindowFeature(Window.FEATURE_NO_TITLE);// 隐藏标题栏 getWindow().setFlags(WindowManager.Lay ...

  5. 基于Linux的USB 主/从设备之间通讯的三种方式

    转载:http://archive.eet-china.com/www.eet-china.com/ART_8800323770_617693_TA_eda530e7.HTM 随着简单易用的USB接口 ...

  6. chrome 全屏 的两种方式

    新建脚本start.bat 自动全屏模式 "C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk http: ...

  7. Linux系统安装MySql步骤及截屏

    ➠更多技术干货请戳:听云博客 如下是我工作中的记录,介绍的是linux系统下使用官方编译好的二进制文件进行安装MySql的安装过程和安装截屏,这种安装方式速度快,安装步骤简单! 需要的朋友可以按照如下 ...

  8. iOS开发 代码 或 <Home+Power>截屏

      1. 截屏的两种简单方法, 注意这两种截图方法,都必须在视图完全加载完成后才能截图,即在 viewDidAppear 方法之后截屏,否则无法得到想要的截屏效果 (1) 利用绘图方法 renderI ...

  9. Windows10-UWP中设备序列显示不同XAML的三种方式[3]

    阅读目录: 概述 DeviceFamily-Type文件夹 DeviceFamily-Type扩展 InitializeComponent重载 结论 概述 Windows10-UWP(Universa ...

  10. IOS开发-几种截屏方法

    IOS开发-几种截屏方法 1.        UIGraphicsBeginImageContextWithOptions(pageView.page.bounds.size, YES, zoomSc ...

随机推荐

  1. ContentType组件表使用

    https://www.shuzhiduo.com/A/qVdepN2r5P/

  2. auth模块的一些方法

    auth模块 auth模块是cookie和session的升级版,auth模块是对登录认证方法的一种封装,之前我们获取用户输入的用户名及密码后需要自己从user表里查询有没有用户名和密码符合的对象,而 ...

  3. 目标检测 - VOC - xml标注格式

    目标检测 - VOC - xml标注格式 相对其他计算机视觉任务,目标检测算法的数据格式更为复杂.为了对数据进行统一的处理,目标检测数据一般都会做成VOC或者COCO的格式. XML标注格式 < ...

  4. nebula-br local-store 模式,快速搭建主备集群实践

    因为线上图数据库目前为单集群,数据量比较大,有以下缺点: 单点风险,一旦集群崩溃或者因为某些查询拖垮整个集群,就会导致所有图操作受影响 很多优化类但会影响读写的操作不好执行,比如:compact.ba ...

  5. 调试 Docker 容器内部进程

    首发于官方博客:https://nebula-graph.com.cn/posts/debug-nebula-graph-processes-docker/ 摘要:本文以 Nebula Graph 进 ...

  6. 3.1蓝桥杯每日知识点,全排列permutation

    next_permutation()函数 适用于生成当前序列的下一个排列 如果存在下一个排列,则将当前序列更改为下一个排列,并返回true 如果当前序列已经是最后一个排列,则将序列更改为第一个排列,并 ...

  7. 为SQL Server配置连接加密

    前言 很多客户在对数据库做安全审计时要求配置连接加密,本文就如何配置加密以及使用证书做一个系统的整理. 连接加密 首先,连接加密不是透明数据加密,很多人经常把两个概念混淆.连接加密是指客户端程序和SQ ...

  8. C++中的不规则二维数组

    技术背景 最近刚学习C++的一些编程技巧,对于一些相对比较陌生的问题,只能采取一些简单粗暴的方案来实现.就比如说,我们可以在Python中定义一个[[0,0,0],[1,2],[1,1,1],[3]] ...

  9. vue3自定义Hooks

    比较简单的小demo,直接上代码吧 ts使用defineComponent,setup()里面使用 Composition API 写法,逻辑块清晰,不用前后文查找,拒绝 spaghetti code ...

  10. Java多线程转账

    Java多线程转账 关键词:多线程,Java 以前的一道面试题,要求是使用Java多线程,实现一个转账业务.不考虑数据库,不考虑其他第三方系统.只考虑当前Java程序内各个账户进行转账,保证转账金额正 ...