◼️

Android開発でよく使うadbコマンド5選

に公開

Android開発を少しでも楽にする、自分がよく使っているadbコマンドとそのaliasやスクリプトを5つご紹介します。

1. Androidでリンクを開く

AppLinksやDeepLinkの動作確認をする時にadbコマンドを使うと思います。
毎回ちょっと長めのコマンドを打ち込むのは少し面倒ですよね。aliasを作っておくと便利です。

alias adb-link='adb shell am start -a android.intent.action.VIEW -d'

使用例:

adb-link "https://example.com/app"
adb-link "myapp://deeplink/path"

2. Android画面録画

動作確認やモックなど、実際の操作を画面録画して共有することはよくあると思います。
Android Studioからも画面録画ができますが、動作が不安定だったりするので、adbコマンドから実行するのがおすすめです。

以下のaliasで録画を開始します。録画を停止したい時は Ctrl+C を押してください。

alias adb-record='adb shell screenrecord /sdcard/output.mp4'

録画した動画は、以下のスクリプトでPCに保存しています。
動画ファイルは共有することが多いのでffmpegを使用して圧縮する処理も加えています。
自分はこのスクリプトをadb-pull-screenrecord という名前でパスの通ったディレクトリに保存しています

#!/bin/sh

adb pull /sdcard/output.mp4 ./$1.mp4
ffmpeg -i $1.mp4 -crf 32 $1-encoded.mp4

使用例:

# 録画開始(Ctrl+Cで停止)
adb-record
# demo.mp4として保存・demo-encoded.mp4として圧縮
adb-pull-screenrecord demo

3. 表示中のActivity名の取得

新しいプロジェクトに参加した時など、「この画面はどのActivityなのか?」を知りたい時に便利なコマンドです。
現在フォーカスしているActivityのクラス名を取得できます。

alias adb-focus-activity='adb shell dumpsys activity | grep "CurrentFocus"'

4. 追加されたFragment名の取得

表示されているFragmentを知りたい場面も多いと思います。
このコマンドは、Activityに追加されているFragmentの一覧を表示します。

alias adb-added-fragments='adb shell dumpsys activity top | grep "Added Fragments" -A 5'

5. adbの再起動

adbの動作が不安定になった時の対処法です。
adbを再起動することで、接続問題を解決できることがあります。

alias adb-restart='adb kill-server; adb start-server'

まとめ

自分はまだあまり活用しきれていないですが、
adbコマンドを活用することでAndroid開発が効率化されると思います。
特にaliasやスクリプトを設定しておくと便利ですね。
便利なコマンドやalias、スクリプトがあればコメントで教えていただけると幸いです

株式会社ソニックムーブ

Discussion