2014-09-16

利用 Adb 進行 Android 畫面影像紀錄

Android 系統可以紀錄畫面圖像非常簡單
通常只需要按下兩個組合鍵或一個手勢就可以紀錄畫面圖像,或可以用 Apps 輔助操作
但進行畫面影像紀錄並不簡單

不管需不需要收費
很多聲稱不需要有 root 權限的 Apps 實際上都不過進行畫面影像紀錄
不懂「root 機」的使用者可能會使用「一鍵 root 機」協助獲得 root 權限,但這種方便是否安全就成疑了

Android 官方上提供稱為 Android Debug Bridge (Adb) 的工具
可以借助 Android 本身的 USB debug 功能來替 Android 進行各類 Unix like 操作

先到 http://developer.android.com/sdk/index.html 下載 ADT Bundle
根據閣下的作業系統下載對應的平台版本
下載後解壓縮,需要使用的 adb 執行檔在 adt-bundle-*/sdk/platform-tools/
而大部分 Linux 發行版可以透過指令例如 Debian 系列可以使用
sudo apt-get install android-tools-adb

開啟 terminal (或 cmd)
先確保沒有任何 Adb 伺服器正在運作,先執行
adb kill-server
將 Adb 伺服器終止運作
(若果未設定 PATH 或使用 adt-bundle-*/sdk/platform-tools/adb 請使用絕對或相對路徑)

然後輸入
adb start-server
將 Adb 伺服器啟動

然後到 Android 啟用 USB Debug 工具

見下文
到設定 > 開發人員工具

見下文
開啟開發人員工具並確定

見下文
見下文
開啟 USB 偵錯並確定

見下文
利用 USB 連接已啟動 Adb 伺服器的電腦與 Android 時
Android 接受由 Adb 伺服器的電腦進行 USB 偵錯

確定連接後執行
adb devices -l
顯示已連接的 Android 裝置

輸入
adb shell
便可以以 Android 的 root 登入 Android 並進行 Unix Like 操作
若果連接的 Android 裝置超過一個,需要加上 -s hex_id 即
adb -s hex_id shell
指定哪一個 Android 裝置進行登入

在 root 登入 Android 後, terminal (或 cmd) 會顯示
shell@flo:/ $

$

利用 Android 指令
screenrecord /path/to/record.avi
便可以將當前 Android 畫面進行影像紀錄
/path/to/record.avi 是相對 Android 的檔案系統結構
一般 Android 的影像位置會在 /sdcard/Movies ,而檔案名則不限,影像以 H.264 進行編碼
留意:這個指令會取代原檔案,執行前最好先確定儲存位置沒有存在同名檔案

執行開始後,若要停止影像紀錄,按 Ctrl C 即可

見下文
影像儲存在指定位置

完成影像紀錄後(或任何需要的操作),輸入
exit
離開 Android

閣下可以用各種方法將影像抽取至電腦,而 Adb 本身都可以將已連接的 Android 的資料抽取至電腦
輸入
adb pull /path/of/file
執行指令後會將指定的檔案抽取至電腦當前目錄
同樣留意,指令會取代原檔案,執行前最好先確定當前位置沒有存在同名檔案

沒有留言 :

張貼留言