在 Android 開發(fā)和調(diào)試中,adb shell 提供了多種方式來實(shí)現(xiàn)錄屏和截屏操作。以下是詳細(xì)的命令及其用法:
1. 使用 screencap 截屏
screencap 是一個用于截取設(shè)備屏幕的工具。
基本用法
adb shell screencap /sdcard/screenshot.png
上述命令會將截圖保存到設(shè)備的 /sdcard/ 目錄下,文件名為 screenshot.png。
將截圖復(fù)制到電腦
要將截圖從設(shè)備復(fù)制到電腦上,可以使用以下命令:
adb pull /sdcard/screenshot.png
直接保存到電腦
如果想一步完成截屏并保存到電腦,可以結(jié)合管道操作(適用于 Linux 和 macOS):
adb exec-out screencap -p > screenshot.png
這會將截圖直接保存到當(dāng)前目錄下的 screenshot.png 文件中。
2. 使用 screenrecord 錄屏
screenrecord 是一個用于錄制設(shè)備屏幕的工具。
基本用法
adb shell screenrecord /sdcard/recording.mp4
上述命令會開始錄制屏幕,并將錄制的視頻保存到設(shè)備的 /sdcard/ 目錄下,文件名為 recording.mp4。
停止錄制
默認(rèn)情況下,錄制會在 3 分鐘后自動停止,或者你可以手動按 Ctrl + C 停止錄制。
將視頻復(fù)制到電腦
錄制完成后,可以將視頻從設(shè)備復(fù)制到電腦上:
adb pull /sdcard/recording.mp4
3. 調(diào)整錄屏參數(shù)
screenrecord 提供了一些選項(xiàng)來調(diào)整錄制行為:
(1) 設(shè)置最大錄制時長
默認(rèn)最大錄制時長為 180 秒(3 分鐘)??梢酝ㄟ^ --time-limit 參數(shù)設(shè)置更短的時長(單位為秒):
adb shell screenrecord --time-limit 60 /sdcard/recording.mp4
上述命令將錄制限制為 60 秒。
(2) 設(shè)置比特率
使用 --bit-rate 參數(shù)設(shè)置視頻的比特率(單位為比特每秒,默認(rèn)值為 4 Mbps):
adb shell screenrecord --bit-rate 8000000 /sdcard/recording.mp4
上述命令將比特率設(shè)置為 8 Mbps,生成更高畫質(zhì)的視頻。
(3) 設(shè)置分辨率
使用 --size 參數(shù)設(shè)置視頻的分辨率(寬度 x 高度,單位為像素):
adb shell screenrecord --size 1280x720 /sdcard/recording.mp4
注意:分辨率必須是設(shè)備支持的分辨率。
(4) 不顯示觸摸點(diǎn)
默認(rèn)情況下,錄制的視頻不會顯示觸摸點(diǎn)。如果需要顯示觸摸點(diǎn),可以使用以下命令啟用:
adb shell settings put system show_touches 1
然后開始錄制。錄制完成后,記得關(guān)閉觸摸點(diǎn)顯示:
adb shell settings put system show_touches 0
4. 注意事項(xiàng)
- 存儲空間:確保設(shè)備有足夠的存儲空間來保存截圖或錄制的視頻。
-
權(quán)限:某些設(shè)備可能需要額外的權(quán)限才能訪問
/sdcard/或其他存儲路徑。 -
音頻錄制:
screenrecord默認(rèn)不錄制音頻。如果需要錄制音頻,可以結(jié)合其他工具(如adb shell的音頻捕獲功能)。 -
最低版本要求:
-
screencap和screenrecord都需要 Android 4.4(API 級別 19)及以上版本。
-
5. 完整示例
截屏示例
# 截圖并保存到設(shè)備
adb shell screencap /sdcard/screenshot.png
# 將截圖復(fù)制到電腦
adb pull /sdcard/screenshot.png
錄屏示例
# 開始錄制屏幕,最大時長 60 秒,比特率為 8 Mbps
adb shell screenrecord --time-limit 60 --bit-rate 8000000 /sdcard/recording.mp4
# 將錄制的視頻復(fù)制到電腦
adb pull /sdcard/recording.mp4
通過以上方法,你可以輕松使用 adb shell 實(shí)現(xiàn) Android 設(shè)備的截屏和錄屏操作!