概要
Mac M1でスマホ上でのコマンド実行を操作できるadb(Android Debug Bridge)を使って、スクリーンショットと動画を取得してみた。
環境
・Mac OS Sonoma 14.4
・Visual Studio Code 1.73.1(adb実行)
・Android Studio (スマホのエミュレータを起動)
参考
adbは以下を参考にやってみた。
Android Debug Bridge(adb) | Android Studio | Android Developers
実行内容
やってみた結果を以下の手順で記載した。
・PCにadbをインストール(1から3)
・スマホのエミュレータを起動するためにAndroid Studioをインストール(4から14)
・adbを利用し、スマホのエミュレータのスクリーンショットと動画保存を実行(15から21)
[PCにadbインストール]
- adbはAndroid Studioに含まれるため、Android Studioのインストーラを下記ページからダウンロードしてインストールした。
- VSCodeを起動し、adbコマンドを利用できるように以下パスを設定した。
cd
vi .zshrc
export PATH=$PATH:/Users/kane/Library/Android/sdk/platform-tools
source ./.zshrc - adbが使えることを以下コマンドで確認した。これでadbが利用できる状態となった。
adb version
[スマホのエミュレータを起動するためにAndroid Studioをインストール]
- Android Studioを起動し、New Projectを押す。
- 「Empty Activity」を選択して、「Next」を押す。
- Nameを適当に変更して、「Finish」を押す。(今回は「AdbTest」に変更。)
- Projectが作成された。
- 画面右側の「Device Manager」のアイコンを押す。
- Device Managerの画面が表示される。「Create virtual device ...」を押す。
- デバイスが表示されるので、適当なデバイスを選択する。ここでは「Pixel 8 Pro」を選択した。選択したら「Next」を押す。
- システムイメージをダウンロードする。ここでは「VanillaIceCream」のみダウンロードした。ダウンロードしたあと「Next」を押す。
- 仮想デバイスの定義画面になるので、確認して「Finish」を押す。
- デバイスが作成された。Typeの右側のアイコン「▷」を押す。
- 右側に作成したデバイスが表示された。スマホのエミュレータ準備ができた。
[adbを利用し、スマホのエミュレータのスクリーンショットと動画保存を実行] - adbコマンドで作成したデバイス(スマホのエミュレータ)と接続されているかを確認する。VS Codeで
adb devices
を実行すると、「emulator-5554」が表示されていた。
- スマホのエミュレータ上でコマンドを実行してみるために、adbのシェルを実行する。
adb shell - スマホのエミュレータのスクリーンショットを取得し、シェル実行を終了する。
emu64a:/ $ screencap /sdcard/screen.png
emu64a:/ $ exit - スマホのエミュレータのスクリーンショットをPCへダウンロードする。
adb pull /sdcard/screen.png
以下、16から18を実行した画面例
- ダウンロードしたファイルを開くと、スマホのエミュレータのスクリーンショットが取得できていた。
- 今度はスマホのエミュレータの画面の動画を取得してみる。
adb pull /sdcard/demo.mp4
Codecのエラーが表示されて、画面サイズがデフォルトになった。
スマホ上で適当に操作したのち、Ctrl+Cで録画を終了した。 - スクリーンショットと同じようにPCにダウンロードできた。
adb pull /sdcard/demo.mp4
- 動画ファイルを開くと、スマホエミュレータ上で操作した画面遷移などが記録されていた。(下記は、画面の一部で、実際はスマホのエミュレータのように縦長で保存されていました)
以上です。