如何使用命令对Android系统进行截屏

Android截图

1.简介

本文是实现对于Android系统在电鱼SAIL-IMX6Q开发板中的截屏命令的使用。

2.准备

SAIL-IMX6Q开发板利用232串口连接电脑,并连接上电源。

再通过连接OTG线,连接电脑,进行安卓系统的烧录。

在电脑端打开超级终端并完成基础设置(波特率:115200,数据位:8,奇偶校验:无,停止位:1,数据流控制:硬件),之后打开开发板电源。

3.解除休眠

烧录安卓系统到开发板i.MX6Q中

开发板连接PC,再在PC中打开超级终端配置成功后开启开发板电源

开机之后会出现如下问题:

此为系统进入休眠,其实就是锁屏后息屏了,所以需要连接LCD显示屏。

开发板连接LCD显示屏,开机解锁之后,找到路径“设置->显示->休眠”选择“永不”,让机器用不休眠即可(见下图)

可以使用KEY-K4进行息屏锁定和亮屏解锁

4.操作

4.1查看帮助命令:

~# screencap -h

上图翻译:

用法: screencap [-hp] [-d 显示id] [文件名]

-h: 查看帮助信息

-p: 保存文件为png格式

-d: 指定截取的显示id,默认为fb0(fb为framebuffer)

如果文件名以.png结束,将保存为png格式文件

如果没有文件名,将直接打印到标准输出

4.2截图保存到内部SD卡并通过u盘拷到PC

截图保存为png格式,可以在安卓设备内部存储中看到此图片

~# screencap -p /sdcard/screen.png

截取fb1界面到sdcard,文件名为fb1.png,可以在安卓设备内部存储中看到此图片

~# screencap -d /dev/graphics/fb1 sdcard/fb1.png

上边两个命令已经将截图保存为png格式,可以在安卓设备内部存储(“设置”->“存储设备和USB”->“内部存储设备”->“浏览”)中看到这两张图片。

通过U盘将截图传输到PC端

“设置”->“存储设备和USB”->“内部存储设备”->“浏览”

之后长按所选的图片之后点击右上角“ ”->“复制到”

之后点击右上角“ ”->显示SD卡->选择sd卡进去之后点击右下角“复制“即可复制到U盘,之后再放入PC端

删除sd卡中的screen.png

~# rm /sdcard/screen.png

4.3screenrecord命令(录屏)

前提:仅支持Android4.4(API level 19)以上,仅支持视频格式:mp4

录制一个10s,分辨率为1280*720的视频:

~# screenrecord --time-limit 10 --size 1280x720 /sdcard/demo.mp4

注意:尺寸使用英文字母x,不是*,否则会提示“Invalid size ‘1280*720’, must be width x height”

即可在安卓设备内部存储上看到这10s的1280*720P的小视频,点击即可播放。

5.小结

如上述示例,通过screencap命令即可实现Android的截图,利用screenrecord即可完成Android的录屏。

原文地址:https://www.cnblogs.com/dianyu/p/11955873.html

时间: 2024-08-05 00:15:25

如何使用命令对Android系统进行截屏的相关文章

用adb pull命令从android系统中读取文件失败的原因及解决办法

问题:使用adb pull命令从android系统中读取文件失败.显示:Permission denied 原因:是由于文件权限原因引起. 使用ls -l命令查看android系统中的文件权限为: -rw-rw---- app_51   app_51 也就是说,该文件只有app_51用户以及app_51群组拥有读写权限,而adb shell的用户为shell,既不是app_51用户,也不在app_51群组中,所以没有权限读取这个文件.所以就出现了 Permission denied. 解决方法:

Android自己定义截屏功能,相似QQ截屏

由于公司业务需求 须要对一个屏幕进行截屏.但自带的截屏功能是远远不够项目的功能需求 ,我们是做一个画板软件 .须要的像QQ那样截屏之后 ,能够看到我们自己定义的工具.有画笔,button等等 .android自带的功能非常easy,仅仅须要Intent隐式调用就全然足够了.但他是系统的应用 ,界面固定.无法定制改动.实现方法跟办法有非常多种,以下记录下我实现的方法 .我是这样一个思路 ,重写一个View组件 ,在OnDraw里面仅仅负责不绘图形(包含半透明的四个矩形,亮框矩形,亮框上的四个小圆点

Qt on Android:应用截屏

在桌面平台上,QScreen::grabWindow 可以为你的应用截屏,Android 平台上这个不管用了,不过有替代方法. 分两种情况来说吧, Qt Widgets 与 Qt Quick. 插播广告,欢迎关注我的微信订阅号"程序视界",扫描下方二维码即可: 程序视界每周更新一到二篇程序员相关的文章,从心出发,漫谈程序员眼中的世界和世界眼中的程序员. Qt Widgets 最关键的就是一个函数: QWidget::render ,这个方法可以把一个 QWidget(包含它的孩子们)的

Android快照与截屏

android WebView的快照和截屏网上介绍的已经很多,在这里简单的记录下: 1.快照,一般我们在使用WebView时,网页放大,有一部分不会再屏幕上显示,如果我们想截取整个WebView的显示部分,我们就可以用的这个,代码如下: /** * 快照 * * @param context * @return */ private Bitmap captureScreen(Activity context) { //View snapShot = context.getWindow().get

android代码实现截屏功能

android开发中通过View的getDrawingCache方法可以达到截屏的目的,只是缺少状态栏! 原始界面 截屏得到的图片 代码实现 1. 添加权限(AndroidManifest.xml文件里) <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 2. 添加1个Button(activity_main.xml文件) <RelativeLayout xmlns

在Eclipse中开发Android程序时截屏的方法

在Eclipse中调试Android程序时,有时需要将程序截图保存到电脑中.步骤如下: Window --- Show View --- Other : 在弹出的窗口中,选择 Devices : 在打开的Device选项卡中,选择要截图的设备或模拟器,然后点击旁边的截图按钮: 在弹出的窗口中,点击 Save 按钮,将程序截图保存到指定的目录中即可.

Android系统截屏的实现(附代码)

1.背景 写博客快两年了,写了100+的文章,最火的文章也是大家最关注的就是如何实现android系统截屏.其实我们google android_screen_shot就会找到很对办法,但那些都是很多年前的了,在android4.*版本后,android对于源码进行了更正,使得以前的方法都不能够使用. 感谢cjd6568358这名网友,我们一起讨论,最终由他实现了android系统截屏功能,为了让以后想要这个功能的coder可以少走一些弯路,我们整理的代码做成开源项目. 2.思路 其实主要思路还

监听Android系统截屏

公司的项目由于安全需要,对某一特定的页面需要监听是否被用户截屏了. 简单搜了一下,很少有这方面的问题,没办法,只能自己折腾了. 目前想到三种思路: 1.监听广播 当然,前提是系统在截屏的时候发送某一广播,然而并没有. 2.监听按键 Android手机按下“电源键+音量减”会进行截屏,此外大部分手机状态栏下拉的页面中也会有截屏按钮.遗憾的是,监听这两处的操作并不是一件让人开心的事儿~~. 3.监听手机中图片的变化 开始只想到了MediaStore这个类,可以通过它拿到手机中的所有图片,每隔一段时间

系统截屏源码浅析

android中实现截屏的方式有很多种,形如下面几种: 1.通过view.getDrawingCache获取屏幕的图像数据,这也是众多开发同行朋友经常使用的一种方式,可惜的是这种方式并不适用于surfaceview. 2.利用adb命令,adb shell screencap -p path,再利用runtime去执行,但是这种方式需要获得系统权限方可. 3.通过framebuffer实现截屏,帧缓冲(framebuffer)是Linux为显示设备提供的一个接口,允许上层应用程序在图形模式下直接