android一键截图代码,偷偷告诉你ADB命令葵花宝典【一键截图和录屏】

1460000021814434

先导预告

作为一名测试工程师,每天可能都会面临从不同的设备导出截图或视频的工作,有些可能是bug截图或bug回放视频,有些截图可能是提供给PM或UI验收等等。 常规操作是iOS设备可以借助于iTools等工具导出;而安卓设备可能需要从设备文件系统中找到相册,再从相册中找出要导出的视频或图片。 其他方案是通过微信或QQ导出等。

问题

由于安卓厂商繁多,各个厂商不一,测试时有些设备可能是临时借用的测试机,不太熟悉设备文件系统的路径,导出图片或视频时会浪费一些不必要的时间,如果通过微信或QQ需要进行登录登出操作,也很繁琐,如果你也遇到了这些问题,那么本文会帮你解决烦恼哦。本文主要是解决安卓设备导出图片和视频导出成本高的问题。

思路

安卓设备上守护进程 (adbd)可支持运行adb命令,且adb提供了截图和录屏命令。因此,先利用adb截图和录屏命令将截图和视频保存在设备上,然后将截图和视频导出到电脑上的固定路径下,最后将设备上的截图和视频删除。 将以上步骤封装在一个脚本中,当需要截图或录屏时只需要小手一点,一步实现。

解决方案

1、通过adb命令将截图和视频保存在设备上临时目录

2、将设备临时目录下的视频和图片push到电脑

3、删除设备上的图片和视频

以上步骤的操作命令复制到bat或sh脚本中,然后在命令行中执行bat或sh脚本,即可实现一键式截图和录制视频了。下面有具体示例可参考,你值得一试哦!

具体示例

屏幕截图 screenshot.bat

#第一步 截屏临时保存到 Android 系统的临时目录

adb shell screencap -p /data/local/tmp/screenshot.png

#第二步 将截图上传到PC本地

adb push /data/local/tmp/screenshot.png C:\Users\xxx\Desktop\screenshot.png

#第三步 删除Android系统临时目录生成的截图

adb shell rm /data/local/tmp/demo.png

复制代码

屏幕录制 screenrecord.bat

#第一步 录制屏幕临时保存到 Android 系统的临时目录

adb shell screenrecord --bugreport --time-limit 20 /data/local/tmp/screenrecord.mp4

#第二步 将录屏视频上传到PC本地

adb push /data/local/tmp/demo.mp4

C:\Users\xxx\Desktop\screenrecord.mp4

#第三步 删除Android系统临时目录生成的录屏视频

adb shell rm /sdcard/demo.mp4

复制代码

环境数据准备

1、Android设备,且开启USB调试

2、配置adb环境的电脑一台

3、USB数据线,注意有些仅有充电功能,没有数据传输功能

4、命令参数调试,如下

可通过adb shell screenrecord --help查看帮助命令,截取部分如下

\--bugreport Add additional information, such as a timestamp overlay, that is helpful in videos captured to illustrate bugs. --time-limit TIME Set the maximum recording time, in seconds. Default / maximum is 180.

读完本文或许你会好奇adb到底是什么,它的工作原理是什么,它有什么功能,学习它有什么好处呢?

后续会更新adb的工作原理和以及它的主要功能,敬请期待!

感兴趣的小伙伴可以WeChat公众号:琦哥私房菜

或扫描下方图片即可获取最新文章啦。

1460000021814433

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/312117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10进制转换成其他进制-短除法

将10进制下的n转换成b进制下的数。 代码如下: char get(int x) {if (x<9) return x0;return x-10A; }string base(int n,int b) {string num;while(n) num get(n%b),n/b;reverse(num.begin(),num.end());return num; }例题&#xff1a; 回文数是指数字从前往后读和从后往…

【C# 调用 Go 语言】0x1 Hello Golang

C# 和 Golang 都不是世界上最好的语言。在不同的业务场景下&#xff0c;C# 和 Golang 各有所长。如果要编写一个网络程序&#xff0c;显然 Golang 更擅长&#xff0c;而如果要编写一个桌面 GUI 程序&#xff0c;那么 C# 简直不要太爽。我们完全可以将两者用在同一个项目中&…

android仿支付宝弹窗,【转】MUI自定义底部弹窗自带遮罩层仿支付宝支付弹窗

[Asm] 纯文本查看 复制代码html,body{height: 100%;}.fr-tc{/* 控制弹窗高度 */height: 40%;}.fr-div-w{border-radius: 10px 10px 0px 0px;background-color: #FFFFFF;height: 100%;padding: 15px;}.fr-btn{display: block;height: 40px;width: 60%;background-color: #14b5ff…

整数二分

整数二分步骤&#xff1a; 1.找一个区间[L,R],使答案一定在这个区间 2.找一个判断条件&#xff0c;使得该判断条件具有二段性(一般具有单调性)&#xff0c;并且答案一定是该二段性的分界点 3.分析终点M在该判断条件下是否成立&#xff0c;如果成立&#xff0c;考虑答案在哪个区…

解惑小微企业信息化系统上云的顾虑

小微企业到目前阶段&#xff0c;一点信息化系统没上的企业很少了&#xff0c;几乎找不到了。为了满足信息化系统异地办公的外网访问需要&#xff0c;在综合考虑硬件成本和运维成本&#xff0c;初期上云☁应该是最经济实惠的方案。信息化和数字化经济发展不仅给商业模式带来变革…

android 运行在ui县城,Android基础:在UI线程中运行代码

Android基础&#xff1a;在UI线程中运行代码从在UI线程中运行代码的角度来看&#xff0c;在以下方面有什么区别&#xff1a;MainActivity.this.runOnUiThread(new Runnable() {public void run() {Log.d("UI thread", "I am the UI thread");}});或MainAct…

区间合并

区间合并算法&#xff1a; 1.将所有区间按左端点从小到大排序 2.从左到右遍历每个区间 例题&#xff1a; 某校大门外长度为L的马路上有一排树&#xff0c;每两棵相邻的树之间的间隔都是1米。 我们可以把马路看成一个数轴&#xff0c;马路的一端在数轴0的位置&#xff0c;另一端…

云原生时代, 选择.NET Core

在容器、Kubernetes、DevOps&#xff0c;以及微服务等技术的推动下&#xff0c;2020年云原生势不可挡。 .NET Core 也非常契合 云原生对应用运行时的不同需求&#xff0c;.NET Core和kubernetes 同年诞生发展&#xff0c; 2018年kubernetes 已经奠定了在容器编排领域的王者地位…

pm1 android,Android Sensor SDK

Android Sensor SDKStep By Step1.新建工程Android Studio配置将sensoro-sensor-kit.jar包放入道libs文件夹下,然后在当前工程下的build.gradle文件配置项中的dependencies新增内容,&#xff0c;如下compile files(libs/sensoro-sensor-kit.jar)Eclipse配置将sensoro-sensor-ki…

哈希表应用举例

例题&#xff1a; 伊娃喜欢从整个宇宙中收集硬币。 有一天&#xff0c;她去了一家宇宙购物中心购物&#xff0c;结账时可以使用各种硬币付款。 但是&#xff0c;有一个特殊的付款要求&#xff1a;每张帐单&#xff0c;她只能使用恰好两个硬币来准确的支付消费金额。 给定她拥有…

WebApi管理和性能测试工具WebApiBenchmarks

说到WebApi管理和测试工具其实已经非常多的了&#xff0c;Postman、Swagger等在管理和维护上都非常出色&#xff1b;在性能测试方面也有不少的工具如:wrk,bombardier,http_load和ab等等。不过这些工具都具有单一性&#xff0c;管理和维护好的在性能测试上比较低效&#xff0c;对…

android中的shape资源,Android Drawable资源讲解之shape篇

运用好Android的drawable资源&#xff0c;在开发中就可以减少图片的使用量&#xff0c;这样既缩小了app的体积&#xff0c;也省去了设计图片的时间&#xff0c;而且也容易适配不同的屏幕尺寸。今天首先来讲讲shape资源的使用。1. Shape的属性介绍shape共支持四种形状&#xff0…

C++unique函数应用举例

明明想在学校中请一些同学一起做一项问卷调查。 为了实验的客观性&#xff0c;他先用计算机生成了N个1到1000之间的随机整数&#xff0c;对于其中重复的数字&#xff0c;只保留一个&#xff0c;把其余相同的数去掉&#xff0c;不同的数对应着不同的学生的学号。 然后再把这些数…

C# WPF 一个设计界面

微信公众号&#xff1a;Dotnet9&#xff0c;网站&#xff1a;Dotnet9&#xff0c;问题或建议&#xff1a;请网站留言&#xff0c; 如果对您有所帮助&#xff1a;欢迎赞赏。C# WPF 一个设计界面今天正月初三&#xff0c;大家在家呆着挺好&#xff0c;不要忘了自我充电。武汉人民…

android中shape的属性,android中shape的属性

solid&#xff1a;实心&#xff0c;就是填充的意思android:color指定填充的颜色gradient&#xff1a;渐变android:startColor和android:endColor分别为起始和结束颜色&#xff0c;ndroid:angle是渐变角度&#xff0c;必须为45的整数倍。另外渐变默认的模式为android:type”line…

C++to_string应用举例

给定一个非负整数 N&#xff0c;你的任务是计算 N 的所有数字的总和&#xff0c;并以英语输出总和的每个数字。 输入格式 共一行&#xff0c;包含一个整数 N。 输出格式 共一行&#xff0c;用英语输出总和的每个数字&#xff0c;单词之间用空格隔开。 代码如下&#xff1a; …

合集| 21 篇技术文章,带你从零入门 K8s

由阿里云与 CNCF 共同开发的《CNCF x Alibaba 云原生技术公开课》&#xff08;视频课程&#xff09;第一期已更新完毕。为了让大家有更好的学习体验&#xff0c;我们把视频课程转为图文&#xff0c;并请讲师重新编辑成文章&#xff0c;在公众号以“从零入门 K8s” 为系列进行每…

C++string容器应用举例

给定一个整数&#xff0c;请将该数各个位上数字反转得到一个新数。 新数也应满足整数的常见形式&#xff0c;即除非给定的原数为零&#xff0c;否则反转后得到的新数的最高位数字不应为零。 输入格式 输入共1行&#xff0c;1个整数N。 输出格式 输出共1行&#xff0c;1个整数…

家居灯光控制系统设计 android,基于Android的室内照明控制系统设计与实现

摘要&#xff1a;传统的室内照明系统存在控制不方便、布线困难、智能化程度不高等问题,而随着Android智能手机不断发展,已经可以实现多种控制功能。结合WiFi无线通信技术低功耗、高传输速率、组网方便等特点,适合智能化的室内照明控制系统。基于此提出一种以Android手机为平台,…

比尔盖茨早有预警:对大疫情爆发我们还没准备好

比尔盖茨早已预警&#xff0c;如今全球最大的危险不是核战争&#xff0c;而是高度传染的病毒&#xff0c;不是导弹&#xff0c;而是微生物。新型冠状病毒感染肺炎新增病例数仍在增长&#xff0c;钛媒体根据百度数据统计官方发布显示&#xff0c;截止发稿前1月30日9:30&#xff…