安卓自帶錄屏命令的優缺點(轉)
首先,這一功能目前主要是面向開發者的,普通使用者拿著手機根本無從開啟,必須連線到電腦上,執行安卓開發者工具,然後通過命令列執行:
adb shell screenrecord /sdcard/movie.mp4
這樣就可以在SD卡根目錄下得到一個名為“movie.mp4”的螢幕錄影視訊檔案,當然路徑、檔名可以自定義,但注意下次不要使用同樣的檔名,否則會直接覆蓋,沒有任何提示。
在錄影過程中,可以隨時按下Ctrl+C快捷鍵終止。
該命令還支援一些附加引數,比如控制碼率的bit-rate、控制解析度的size <WIDTHxHEIGHT>、控制時間的time-limit <TIME>
Android Studio DDMS面板中也可以找到螢幕錄影功能。
優點:
1、系統原生支援,無需Root,無需刷機。
2、視訊預設以裝置原生解析度錄製,質量很好。快速移動的話會有一些殘影,但影響不大,幀率也始終都很高。
缺點:
1、必須通過ADB命令使用,普通使用者會很頭疼。這彷彿回到了安卓4.0之前的時代,那時候原生系統要截個圖都得Root或者ADB。
2、視訊錄製長度限制在180秒鐘,到時會自動停止。
3、無法同步錄製音訊。
4、不支援螢幕旋轉。如果錄製過程中旋轉的話,部分割槽域會被裁剪掉。
5、命令引數只對當前有效,下次必須重新手動輸入。
或許正因為有如此多的不足,Google才沒有將該功能開放給普通使用者,但既然已經邁出了第一步,相信後續會逐漸完善起來,安卓4.5/5.0什麼的就好了。
轉載:http://news.mydrivers.com/1/281/281619.htm
參考後自己寫了點東西:
/**
* 提供開啟/關閉 錄製螢幕的功能
* @param recordSwitch
* @throws IOException
* @author
* @throws InterruptedException
* @time 2015-7-11下午3:29:42
*/
public void screenRecord(boolean recordSwitch) throws IOException, InterruptedException {
File recordFolder=new File("/sdcard/autotest/screenRecord/");
if (!recordFolder.exists()) {
recordFolder.mkdirs();
}
for (int i = 0; i < 2; i++) {
@SuppressWarnings("unused")
Process process=Runtime.getRuntime()
.exec("adb shell screenrecord --time-limit 10 "+recordFolder);
// process.waitFor();
// process.destroy();
}
}
}