Android开发小技巧 | 一句命令搞定截屏
2017-03-22 17:02
211 查看
![](http://upload-images.jianshu.io/upload_images/1783214-db8e4aeedd9e34c6.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
-- 简书作者 谢恩铭 转载请注明出处
一句命令搞定截屏
在安卓开发中, 我们很多时候都要用到截屏这个功能。有时是为了演示, 有时是为了报告问题(比如在Bugzilla, Jira, Redmine等Bug跟踪系统中上传截图), 有时是为了发布应用时要用的截图。
今天就来聊聊如何快速只用一句简单的命令就搞定截图。
由繁到简的演进:三种方法
这篇主要讲Linux系统下如何Android手机截屏(当然了,Windows下也类似,可以自行尝试):首先你的Linux中要安装了adb(也就是Android Debug Bridge,可以在你下载的Android的SDK的platform-tools文件夹中找到,只要把路径加入PATH环境变量就可以)。
![](http://upload-images.jianshu.io/upload_images/1783214-3654a41ae54c87fe.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
而且你的Android手机须要开启了Develop options (开发者选项,要开启好像一般是在Settings(设置)里的About device(关于本机)中按7次Build number那个地方),如下:
![](http://upload-images.jianshu.io/upload_images/1783214-0db582790061d86a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
那么截屏有哪几种方式呢?应该有很多,这里提供由繁到简的三种方法,也记录了小编从事Android开发之后的截屏方法的“演进”。哈哈,以前是挺蠢萌的(话外音:小编你只有蠢,没有萌,好不...):
1. 手动+adb命令
用你的手机的组合键来截屏(一般是同时按下Home键和电源键),然后用adb pull来取回本地:adb pull /手机的截屏图片保存路径/xxx.png
2. 纯adb命令
1.使用screencap这个命令,配合adb命令来实现截图并保存到手机的/sdcard目录中:adb shell screencap -p /sdcard/hello.png
2.用adb pull将手机中的文件取回本地:
adb pull /sdcard/hello.png
成功运行上面两行命令之后,你的家目录~中就会多出一个hello.png的图片。
当然了,截图时注意不要锁屏,不然截出来就是黑屏。
3. Shell函数+命令
第二种用adb命令的方式已经比较简单快捷了。但是,作为程序员,难道每次截屏都要输入这两个命令吗?简直不能忍。程序员要学会“偷懒”
一般Ubuntu(或其他Linux发行版,例如Fedora)中默认的Shell程序是Bash。因此我们其实可以在.bashrc中写一个函数:
1.用你惯用的文本编辑器打开.bashrc这个bash的配置文件,位于你家目录中:
vim ~/.bashrc
2.在.bashrc里加入以下的函数(名字是droidshot 。当然了,你可以随便取什么名字):
# For Android Device Screenshot function droidshot() { adb shell screencap -p /sdcard/$1.png && adb pull /sdcard/$1.png }
3.保存,退出。然后,用source命令使修改立即生效:
source ~/.bashrc
4.之后,使用很简单,在终端中输入:
droidshot hello
hello就是你传给droidshot这个函数的第一个参数(你也可以随便取其他名字),相当于函数里那个$1。
因此,在你的家目录~下就会多了一个 hello.png的图片,就是你刚才先截图,保存到Android手机的/sdcard目录下,再从Android手机中用adb pull来取回到本地的那张屏幕截图。
![](http://upload-images.jianshu.io/upload_images/1783214-144a8910c67f7c8e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
screen.png这张截图就如上图这样,这张是在三星的Galaxy S7上截的。
是不是超级省事呢?以后你想创建其他截屏图片,只要在终端输入:
droidshot hehe droidshot haha
等等,就可以在本地获得hehe.png,haha.png这些图片了。
下期我们继续分享Android开发小技巧。
我是谢恩铭,在法国巴黎奋斗的嵌入式软件工程师。
目前工作是Android嵌入式和app开发。
热爱生活, 喜欢游泳,略懂烹饪。
相关文章推荐
- Android开发小技巧 | 一句命令搞定截屏
- Android开发:一句代码搞定eclipse查看v4源码
- Linux以及Android开发中的小技巧和长繁命令记录收集
- Linux以及Android开发中的小技巧和长繁命令记录收集
- Android开发:一句代码搞定eclipse查看v4源码
- Android开发中常用ADB命令
- Android一些开发小技巧_不定期更新
- 几点Android 开发中的小技巧
- 分享几点Android 开发中的小技巧
- Android开发中用到的命令——整理贴
- android开发命令
- Android原生(Native)C开发之一(备份测试代码的编译命令)
- 几个Android开发常用命令
- 学习android驱动开发必须记住的几个linux 命令
- Android appWidget——每日一句应用开发
- 开发嵌入式linux/android常用的一些linux命令
- Android开发,常用的终端命令
- 天天Android - 2010-10-26 搞定Windows下开发NDK
- Android开发之android命令大全
- android开发小技巧笔记