Android實現(xiàn)自動截圖腳本
做開發(fā)的總會碰到測試或者項目經(jīng)理問你要某個界面截圖的情況,用手機的快捷鍵截圖再上傳效率不高,又不太想用手機助手(怕全家桶),便打起Android的ADB命令的主意。adb指令中screencap指令就是截圖方法,再通過pull拉取到指定文件夾即可。
這邊我對不同的操作系統(tǒng)都進行了相應的整理和使用。windows下為批處理程序,mac下為shell可執(zhí)行腳本程序。
需注意,腳本使用,都需要先在桌面上新建AndroidScreen文件夾,然后電腦同時只可以連接一臺手機(當然這些也都可以完善)。
Window
@echo off set HOUR=%time:~0,2% set MINUTE=%time:~3,2% set SECOND=%time:~6,2% :: 設置時間參數(shù) set TMP_HOUR=%time:~1,1% set NINE=9 set ZERO=0 :: 小時數(shù)不滿2位進行補位操作 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 #獲取當前時間 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等信息,然后等待用戶手動關閉。
這邊需要對命令行工具修改下配置,將該選項改成
Close the window
或者
Close if the shell exited cleanly
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
ViewPager頂部導航欄聯(lián)動效果(標題欄條目多)
這篇文章主要介紹了ViewPager頂部導航欄聯(lián)動效果,代碼簡單易懂,感興趣的朋友參考下吧2016-08-08Android中AlertDialog四種對話框的最科學編寫用法(實例代碼)
這篇文章主要介紹了Android中AlertDialog四種對話框的最科學編寫用法,本文通過代碼講解的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-11-11Android開發(fā)實現(xiàn)長按返回鍵彈出關機框功能
這篇文章主要介紹了Android開發(fā)實現(xiàn)長按返回鍵彈出關機框功能,涉及Android針對長按事件的響應與處理相關操作技巧,需要的朋友可以參考下2017-09-09超過百萬的StackOverflow Flutter 20大問題(推薦)
這篇文章主要介紹了超過百萬的StackOverflow Flutter 問題,有的問題在stackoverflow上有幾十萬的閱讀量,說明很多人都遇到了這些問題,把這些問題整理分享給大家需要的朋友可以參考下2020-04-04