サイトアイコン 【TechGrowUp】

Macでadbコマンドを利用する方法と、adbの使い方/Tips一覧

adbの使い方とTipsのアイキャッチ

adb(Android Debug Bridge)とは

 Android Debug Bridge(adb)とは、Androidデバイス(スマホ、タブレット等)と通信を行うためのコマンドラインツールです。adbコマンドを利用することで、アプリのインストールやデバッグなど様々な操作を、PC上のコマンドライン(ターミナル)から行うことが出来ます。

 また、[adb shell]というコマンドを利用することで、AndroidのUnixシェルにアクセスすることが可能になります。

adbインストール

 adbをインストールする方法としてはいくつかありますが、今回はAndroid Studioをインストールすると付いてくる、adbツールを利用していきたいと思います。

 まず、Android Studioをインストールできていない方は、以下記事でインストールしましょう。
 ※「Android Studioのセットアップ」の項目までで大丈夫です。

 

 Android Studioを開いてから、下記画面の下部の「Configure]というタブの[Preferences]という項目を押しましょう。

 すると、Android Studioの設定画面が開きますので、左にあるタブで
[System Settings]->[Android SDK]を押すと、右側にAndroid SDK Locationという表示があると思いますので、そこに表示されているディレクトリをコピーしておきましょう。
 ※私の場合は、「/Users/daichimizuno/Library/Android/sdk」となっていました。

adbの環境変数設定

 Macでターミナルを開いてから、下記の流れでコマンドを打ってください。

1.bash_profileを開く
vi ~/.bash_profile

 キーボードの「i」を押すと、入力モードになります。

2.bash_profileへ追記
export PATH=$PATH:先程コピーしたパス/platform-tools

 [esc]を押し、「:wq」と打った後に「Enter」を押すと入力した内容が保存されます。 

※ちなみに私の場合だと、下記コマンドですので参考にしてみてください。

export PATH=$PATH:/Users/daichimizuno/Library/Android/sdk/platform-tools
3.bash_profileの再読み込み
source ~/.bash_profile
4. adbコマンドの確認
adb help

 これで、adbコマンドが動いていれば完了となります。

adbコマンドの使い方一覧

 adbコマンドでよく使われるコマンド一覧を記載します。

コマンド説明使い時(利用例)
adb devicesadbで接続されている、デバイスのリストを表示します。adbで繋がっている端末を確認するとき
adb helpadbで利用できるコマンドのヘルプadbの使い方がわからなくなった時
adb versionadbコマンドのバージョンを表示adbのバージョンによって出来ない機能があるため、時々確認します。
adb connect <IP address>:portadbでPCとデバイスを接続する
(デフォルトPORTは5555)
<利用例>
adb connect 192.168.0.11:5555
adb disconnect <IP address>:portadbでPCとデバイスを接続解除する
(デフォルトPORTは5555)
<利用例>
adb disconnect 192.168.0.11:5555
adb pair <IP address>:portadbでPCとデバイスをセキュアに接続する<利用例>
adb pair 192.168.0.11:5555
adb push adbでPCからデバイス上にファイルを転送する<利用例>
adb push file.txt /sdcard/
adb pulladbでデバイス上にあるファイルを、PCに転送する<利用例>
adb pull /sdcard/file.txt /Users/daichimizuno/
adb shellPCからデバイス上のシェルにアクセスする
adb install <apk name>デバイス上にアプリをインストールする<利用例>
adb install sample.apk
adb uninstall <package name>デバイス上のアプリをアンインストールする<利用例>
adb uninstall com.example.application
adb logcatデバイスのログを表示する<利用例>
adb logcat
adb rootルート権限でadbデーモンを再起動するルート権限でデバイスを操作したい時に使います。
adb start-serveradbデーモンを開始する
adb kill-serveradbデーモンを切断する

adb Tips

 adbを使って色々やりたいことがある時のTipsをまとめておきます。

スクリーンショットを取りたい時

adb shell screencap -p /sdcard/image.png
adb pull /sdcard/image.png
adb shell rm /sdcard/screen.png

 screencapコマンドで、スクリーンショットを取得し、adb pullで取得した後、rmコマンドでデバイス上の画像を削除しています。

スクリーン動画を撮影したい時

adb shell screenrecord /sdcard/video.mp4
adb pull /sdcard/video.png
adb shell rm /sdcard/video.png

 screenrecordコマンドで、動画を取得し、adb pullで取得した後、rmコマンドでデバイス上の動画を削除しています。

Wifi越しに接続したい時

Android 11以降

 開発者オプションから、「ワイヤレスデバッグ」というオプションをONにした後、「ペア設定コードによるデバイスのペアを設定」という項目がありますので、そちらに「ipアドレス」と「ポート」が記載されています。

adb pair <ipアドレス>:<ポート>

 この後、ターミナル上で6桁のペアコードが表示されますので、それを入力すると接続が完了します。

Android 10 以前

 Android 10以前でadbをwifi越しで接続するには、PCとデバイスをUSBで接続する必要があります。USB接続を行った後に下記を入力します。

adb tcpip 5555
adb connect <ipアドレス>

 上記を実行した後、USBを外すとwifi越しにadb接続が可能となります。

システムアプリとしてアプリをインストールする(上級者)

 システムアプリとしてアプリをインストールする場合には、root化が必要ですので、root化された前提で、下記を実行します。

adb disable-verity
adb reboot
adb root
adb remount
adb push <.apk> /system/priv-app/
adb reboot

 ※Androidのデバイス、OSによってシステムアプリ領域のディレクトリは、/system/priv-appではない可能性があります

 上記の時に、adb remoutで上手く行かない場合は、adb remountの代わりに下記を実行してみてください。

adb shell
su
mount -o rw,remount /system

adb トラブルシューティング

adb で接続ができない時(adb connect)

  1. デバイスの開発者オプションが有効になっていて、USBデバッグがONになっているか確認
  2. 問題ない場合は、デバイスのIPアドレスが間違っていないか確認する
  3. 間違っていない場合は、ポートに5555に設定して接続してみる
  4. これでもダメであれば、別のポートに変えて実行してみる(5556など)
  5. それでも出来ない場合は、使用しているデバイスがadbを使えない状態になっている可能性ある

アプリをインストール出来ない場合(adb install)

  1. インストールしようとしているアプリが、PC上の適切なディレクトリにあるか確認する
  2. adb install -r <apk>で -r をつけると強制的にインストールできるので、これを試す
  3. 古いバージョンをインストールしようとしている場合は、一度adb uninstallでアプリをアンインストールしてから試す

 

モバイルバージョンを終了