本文转载自《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. 参数替换xargs

    由于很多命令不支持管道|来传递参数,xargs用于产生某个命令的参数,xargs可以读入stdin的数据,并且以空格符或回车符将stdin的数据分隔为参数 示例: 创建10个用户 echo user{ ...

  2. deque双端队列

    # 支持从任意一端增加和删除元素 d = collections.deque() d.extend('abcdefg') d.append('h') d.extendleft(range(6)) # ...

  3. django中update_or_create()

    update_or_create()方法中有一个defaults参数 模型字段会根据查询条件进行查询,如果查询到了,那么就用defaults对应的值去更新字段,如果没有查到就用defaults对应的值 ...

  4. 【LeetCode动态规划#17】知道秘密的人,维护多个dp数组

    知道秘密的人数 在第 1 天,有一个人发现了一个秘密. 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后,每天 给一个新的人 分享 秘密.同时给你一个整数 forget ,表 ...

  5. 【Azure Batch】在中国区批处理服务(Mooncake Batch Account)上实验自动池(Auto Pool)的创建/删除

    问题描述 在Azure Batch的介绍文档中,提出了自动池的概念, 它可以在任务完成后,自动删除Pool资源,详细介绍:https://docs.azure.cn/zh-cn/batch/nodes ...

  6. 我和我的DBA之路

    这几天,突然想写写这些年的工作总结,毕业至今快20年的回顾. 想到20年前,在做毕业设计的时候,当时是学的机械工程类专业,因为带毕业设计的老师兼职企业有个门户网站的需求,而我又会做点网站设计,带的老师 ...

  7. C语言之兔子生产问题

    /#include <stdio.h> main() { long fib1 = 1, fib2 = 1, fib;//定义长整型变量,fib1表示当前前一个月的兔子数,fib2表示当前前 ...

  8. Vite-vue3 架构设计

    Vite-vue3 架构设计 基础信息 Gitee项目地址:https://gitee.com/pengchenggang/vite-vue3 1 创建vite-vue3 初始化脚本 $ npm in ...

  9. Android Webview判断网页加载完毕

    原文: Android Webview判断网页加载完毕 - Stars-One的杂货小窝 书接上文,在Android WebView获取html源码 - Stars-One的杂货小窝此文讲到没有一个可 ...

  10. idea使用Mybatis Log查看执行的sql语句

    参考,欢迎点击原文:https://www.jb51.net/article/195895.htm https://blog.csdn.net/qq2710393/article/details/83 ...