Android 開發小技巧 | 一句命令搞定截屏

-- 做者 謝恩銘 轉載請註明出處javascript

一句命令搞定截屏


在安卓開發中, 咱們不少時候都要用到截屏這個功能。 java

有時是爲了演示, 有時是爲了報告問題(好比在Bugzilla, Jira, Redmine等Bug跟蹤系統中上傳截圖), 有時是爲了發佈應用時要用的截圖。程序員

今天就來聊聊如何快速只用一句簡單的命令就搞定截圖。shell

由繁到簡的演進:三種方法


這篇主要講Linux系統下如何Android手機截屏(固然了,Windows下也相似,能夠自行嘗試):vim

首先你的Linux中要安裝了adb(也就是Android Debug Bridge,能夠在你下載的Android的SDK的platform-tools文件夾中找到,只要把路徑加入PATH環境變量就能夠)。bash

並且你的Android手機需要開啓了Develop options (開發者選項,要開啓好像通常是在Settings(設置)裏的About device(關於本機)中按7次Build number那個地方),以下:微信

那麼截屏有哪幾種方式呢?應該有不少,這裏提供由繁到簡的三種方法,也記錄了小編從事Android開發以後的截屏方法的「演進」。哈哈,之前是挺蠢萌的(話外音:小編你只有蠢,沒有萌,好不...):編輯器

1. 手動+adb命令


用你的手機的組合鍵來截屏(通常是同時按下Home鍵和電源鍵),而後用adb pull來取回本地:函數

adb pull /手機的截屏圖片保存路徑/xxx.png複製代碼

2. 純adb命令


1.使用screencap這個命令,配合adb命令來實現截圖並保存到手機的/sdcard目錄中:ui

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來取回到本地的那張屏幕截圖。

screen.png這張截圖就如上圖這樣,這張是在三星的Galaxy S7上截的。

是否是超級省事呢?之後你想建立其餘截屏圖片,只要在終端輸入:

droidshot hehe

droidshot haha複製代碼

等等,就能夠在本地得到hehe.png,haha.png這些圖片了。

下期咱們繼續分享Android開發小技巧。


人世間,
萬千情感皆有溫度,
千萬代碼似有性格。
這裏有原創教程,IT叢林......
和你一塊兒探索程序人生。
微信公衆號「程序員聯盟」ProgrammerLeague
我是謝恩銘,在巴黎奮鬥的嵌入式軟件工程師。
我的簡介熱愛生活,喜歡游泳,略懂烹飪。人生格言:「向着標杆直跑」

相關文章
相關標籤/搜索