Androidアプリを開発してて、端末の画面キャプチャをPCに送りたい場面って多々あると思います。
僕はそうしたい時はPushbulletを使ってたのですが、もっと良い感じにコマンド一発で出来ないかなぁなんて思っていたらありました。
Android Debug Bridge (adb) | Android Studio
ちゃんと公式を見ようぜって話でした。本当にいつもいつもお世話になります。
スクリーンショットを撮る
端末がadb接続されていることを確認し、以下のコマンドを打ちます。
$ adb shell screencap /sdcard/screen.png
/sdcard/screen.png
というのがスクリーンショットした画像ファイルが端末に保存されるところなので、パスとかファイル名は良い感じにしたら良いと思います。
スクリーンショットを端末からPCに送る
$ adb pull /sdcard/screen.png ~/Desktop/
- (pullしてきた画像は適当にDesktopに配置する感じにしました。)
あとは、上記のコマンドをまとめたエイリアスなど作って、ファイル名をタイムスタンプにしたりすればコマンド一発でスクショがPCに転送出来そうです。Amazingですね。
追記(2018/01/29)
- 僕は、
.zshrc
ファイルに以下のエイリアスを書いて使うようにしています。
alias cap='adb shell screencap /sdcard/`date +%Y%m%d%H%M`.png && adb pull /sdcard/`date +%Y%m%d%H%M`.png ~/Desktop/capture-files'