文档章节

Android 使用shell screencap / screenshot命令截屏

jimstin
 jimstin
发布于 2014/10/14 15:11
字数 197
阅读 783
收藏 0

在Android里可以通过使用shell命令来截屏,一般用于应用程序外截屏,需要root权限。

1)在PC上使用cmd命令截屏

adb shell screencap -p /sdcard/123.png

或者

adb shell screenshot /sdcard/123.png

以上命令的意思是截取当前屏幕,以文件名123.png保存到sdcard目录下。

2)在Android应用里面截屏

    /**
     * 
     * @param path 图片保存路径
     */
    public void screenshot(String path){
    	Process process = null;
    	try{
    	    process = Runtime.getRuntime().exec("su");
    	    PrintStream outputStream = null;
    	    try {
    	        outputStream = new PrintStream(new BufferedOutputStream(process.getOutputStream(), 8192));
    	        outputStream.println("screencap -p " + path);
    	        outputStream.flush();
    	    }catch(Exception e){
    	        e.printStackTrace();
    	    } finally {
    	        if (outputStream != null) {
    	            outputStream.close();
    	        }
    	    }
    	    process.waitFor();
    	}catch(Exception e){
    	    e.printStackTrace();
    	}finally {
    	    if(process != null){
    	        process.destroy();
    	    }
    	}
    }

要给AndroidManifest.xml加上权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

详细见:https://www.zybuluo.com/olunx/note/18021

© 著作权归作者所有

共有 人打赏支持
jimstin
粉丝 1
博文 2
码字总数 911
作品 0
深圳
程序员
Android自动测试工具MonkeyRunner之一:基础知识

一、简介 monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。通过monkeyrunner,您可以写出一个Python程序去安装一个Android应用程序或测试...

Ragnaro
2012/10/18
0
0
Android开源中国客户端学习 截屏模块

这次分享的功能比较简单,是osc的截屏模块,效果如下 ![图片说明文字][1] 这个功能用户体验还是不错的,在很多软件都也都内置了这个功能 这个功能的原理是: 1.在需要截屏的activity的window上覆...

sisuad
2013/07/17
0
1
自动 Android* 应用测试

测试是应用开发流程中的重要环节。 对于 Android,这尤为重要,因为 Android 设备彼此之间差异很大,主要体现在以下几个方面: 屏幕尺寸和分辨率 Android 版本 外形 处理器的指令集 是否有前...

今幕明
2014/03/10
0
1
使用calabash测试开源中国Android客户端

Calabash-android是支持android的UI自动化测试框架,前面已经介绍过《中文Win7下成功安装calabash-android步骤》,这篇博文尝试测试一个真实应用:开源中国客户端。目的是和大家一起学习cal...

超爱fitnesse
2014/09/01
0
3
Android系统下 SD卡各文件夹

1、.androidsecure 是官方app2sd的产物,删了之后装到sd卡中的软件就无法使用了。   2、.Bluetooth 顾名思义,用蓝牙之后就会有这个。   3、.mobo 顾名思义,Moboplayer的缓存文件。   ...

xiahuawuyu
2012/11/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
今天
1
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
今天
1
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
1
0
LNMP架构(Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl)

Nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时...

蛋黄_Yolks
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部