做開發(fā)的總會碰到測試或者項目經(jīng)理問你要某個界面截圖的情況,用手機的快捷鍵截圖再上傳效率不高,又不太想用手機助手(怕全家桶),便打起Android的ADB命令的主意。adb指令中screencap指令就是截圖方法,再通過pull拉取到指定文件夾即可。
這邊我對不同的操作系統(tǒng)都進(jìn)行了相應(yīng)的整理和使用。windows下為批處理程序,mac下為shell可執(zhí)行腳本程序。
需注意,腳本使用,都需要先在桌面上新建AndroidScreen文件夾,然后電腦同時只可以連接一臺手機(當(dāng)然這些也都可以完善)。
Window
@echo offset HOUR=%time:~0,2%set MINUTE=%time:~3,2%set SECOND=%time:~6,2%:: 設(shè)置時間參數(shù)set TMP_HOUR=%time:~1,1%set NINE=9set ZERO=0:: 小時數(shù)不滿2位進(jìn)行補位操作if %HOUR% LEQ %NINE% set HOUR=%ZERO%%TMP_HOUR%set CURRENT_TIME=%HOUR%%MINUTE%%SECOND%:: 以 Android20170109_101920.png 形式的格式命名set name=Android%date:~0,4%%date:~5,2%%date:~8,2%_%CURRENT_TIME%.png:: 獲取桌面文件夾路徑set desktop_dir=C:/Users/Wallent/Desktop/AndroidScreen/:: adb指令截圖adb shell /system/bin/screencap -p /sdcard/%name%:: 將截圖指令拉到指定文件夾adb pull /sdcard/%name% %desktop_dir%/%name%
windosw下保存為AdbScreenShot.bat,直接運行即可。
Mac(Linux)
#!/bin/bash#獲取當(dāng)前時間DATE=$(date "+%Y%m%d_%H%M%S")#以 Android20170109_101920.png形式的格式命名screenfilename=Android$DATE".png"#adb指令截圖adb shell /system/bin/screencap -p /sdcard/$screenfilename#將截圖指令拉到指定文件夾adb pull /sdcard/$screenfilename ~/Desktop/AndroidScreen/.#結(jié)束exit
Mac下保存為AdbScreenShot.sh,需要將改文件改為可執(zhí)行文件。
命令行中輸入:
chmod +x (AdbScreenShot.sh所在路徑)
然后通過
./AdbScreenShot.sh
執(zhí)行或者將該文件打開方式改為命令行,點擊運行即可。


備注:
這邊需要注意的是,Mac下Shell腳本exit指令并不會立即退出命令行工具,而是會打印session closed等信息,然后等待用戶手動關(guān)閉。
這邊需要對命令行工具修改下配置,將該選項改成
Close the window
或者
Close if the shell exited cleanly

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點
疑難解答
圖片精選