📸

adb shell screencap & pull によるスクショの効率化

2024/10/25に公開

GithubのPRなどにスクショを貼る場合、皆さんはどのようにスクショを撮影していますか?

仮想デバイスの場合はAndroid Studio上のGUIで撮影する人、実機の場合はハードウェアのボタンで撮影する人など様々だと思いますが、自分のやり方を紹介します。

1. adbコマンドでスクショを撮影する

この公式doc(Take a screenshot)にある通り、adb(Android Debug Bridge)コマンドを使ってスクショを撮影することができます。

adb shell screencap /sdcard/screen.png

このコマンドの実行結果をAndroid StudioのDevice Explorerで確認すると確かに指定した場所にスクショファイルが保存されていることがわかります。

2. adbコマンドでファイルを取り出す

撮影したスクショファイルはadbコマンドでPCにコピーすることができます。公式doc(Copy files to and from a device)

adb pull /sdcard/screen.png /Users/<username>/Desktop

自分の環境の場合、このコマンドを実行するとデスクトップにスクショファイルをコピーすることができます。

3. コマンドを簡素化する

上述したコマンドのエイリアスを登録し作業を簡素化します。

alias ashsc="adb shell screencap /sdcard/screen.png"
alias apsc="adb pull /sdcard/screen.png /Users/<username>/Desktop"

以上です。

その他

公式docには、adbコマンドを使った画面録画(Record a video) の方法など便利なものが載っているので見てみると開発効率化のヒントが得られるかもしれません。

Discussion