OpenHarmony设备截屏的5种方式
本文转载自《OpenHarmony设备截屏的5种方式 》,作者westinyang
目录
● 方式4:hdc shell snapshot_display
● 持续关注
演示视频: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种方式的更多相关文章
- 在mac上截屏的几种方式
方法 1: 对屏幕的一部分进行截图 按下Command+Shift+4 方法 2: 对整个屏幕进行截图 按下Command+Shift+3 方法 3: 把截图保存到粘贴板 按下Command+ ...
- Android截屏的几种实现
Android截屏的几种实现 微信公众号:CodingAndroid CSDN:http://blog.csdn.net/xinpengfei521 最近我们的APP要求需要截屏功能,网上看了看大致有 ...
- Xamarin Android Activity全屏的两种方式
方式一 直接在Activity的Attribute中定义 如下 在 MainActivity 中 [Activity(Label = "app", MainLauncher = t ...
- Android实现全屏的三种方式
一.通过代码 requestWindowFeature(Window.FEATURE_NO_TITLE);// 隐藏标题栏 getWindow().setFlags(WindowManager.Lay ...
- 基于Linux的USB 主/从设备之间通讯的三种方式
转载:http://archive.eet-china.com/www.eet-china.com/ART_8800323770_617693_TA_eda530e7.HTM 随着简单易用的USB接口 ...
- chrome 全屏 的两种方式
新建脚本start.bat 自动全屏模式 "C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk http: ...
- Linux系统安装MySql步骤及截屏
➠更多技术干货请戳:听云博客 如下是我工作中的记录,介绍的是linux系统下使用官方编译好的二进制文件进行安装MySql的安装过程和安装截屏,这种安装方式速度快,安装步骤简单! 需要的朋友可以按照如下 ...
- iOS开发 代码 或 <Home+Power>截屏
1. 截屏的两种简单方法, 注意这两种截图方法,都必须在视图完全加载完成后才能截图,即在 viewDidAppear 方法之后截屏,否则无法得到想要的截屏效果 (1) 利用绘图方法 renderI ...
- Windows10-UWP中设备序列显示不同XAML的三种方式[3]
阅读目录: 概述 DeviceFamily-Type文件夹 DeviceFamily-Type扩展 InitializeComponent重载 结论 概述 Windows10-UWP(Universa ...
- IOS开发-几种截屏方法
IOS开发-几种截屏方法 1. UIGraphicsBeginImageContextWithOptions(pageView.page.bounds.size, YES, zoomSc ...
随机推荐
- ContentType组件表使用
https://www.shuzhiduo.com/A/qVdepN2r5P/
- auth模块的一些方法
auth模块 auth模块是cookie和session的升级版,auth模块是对登录认证方法的一种封装,之前我们获取用户输入的用户名及密码后需要自己从user表里查询有没有用户名和密码符合的对象,而 ...
- 目标检测 - VOC - xml标注格式
目标检测 - VOC - xml标注格式 相对其他计算机视觉任务,目标检测算法的数据格式更为复杂.为了对数据进行统一的处理,目标检测数据一般都会做成VOC或者COCO的格式. XML标注格式 < ...
- nebula-br local-store 模式,快速搭建主备集群实践
因为线上图数据库目前为单集群,数据量比较大,有以下缺点: 单点风险,一旦集群崩溃或者因为某些查询拖垮整个集群,就会导致所有图操作受影响 很多优化类但会影响读写的操作不好执行,比如:compact.ba ...
- 调试 Docker 容器内部进程
首发于官方博客:https://nebula-graph.com.cn/posts/debug-nebula-graph-processes-docker/ 摘要:本文以 Nebula Graph 进 ...
- 3.1蓝桥杯每日知识点,全排列permutation
next_permutation()函数 适用于生成当前序列的下一个排列 如果存在下一个排列,则将当前序列更改为下一个排列,并返回true 如果当前序列已经是最后一个排列,则将序列更改为第一个排列,并 ...
- 为SQL Server配置连接加密
前言 很多客户在对数据库做安全审计时要求配置连接加密,本文就如何配置加密以及使用证书做一个系统的整理. 连接加密 首先,连接加密不是透明数据加密,很多人经常把两个概念混淆.连接加密是指客户端程序和SQ ...
- C++中的不规则二维数组
技术背景 最近刚学习C++的一些编程技巧,对于一些相对比较陌生的问题,只能采取一些简单粗暴的方案来实现.就比如说,我们可以在Python中定义一个[[0,0,0],[1,2],[1,1,1],[3]] ...
- vue3自定义Hooks
比较简单的小demo,直接上代码吧 ts使用defineComponent,setup()里面使用 Composition API 写法,逻辑块清晰,不用前后文查找,拒绝 spaghetti code ...
- Java多线程转账
Java多线程转账 关键词:多线程,Java 以前的一道面试题,要求是使用Java多线程,实现一个转账业务.不考虑数据库,不考虑其他第三方系统.只考虑当前Java程序内各个账户进行转账,保证转账金额正 ...

