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 Stduioのホーム画面

 すると、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 pushadbで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でアプリをアンインストールしてから試す

 

最後まで読んで頂きありがとうございます!

面白かった、参考になった、と少しでも感じて頂けましたら
ブログランキング上位になるための応援をして頂けないでしょうか!
今後も面白い記事を更新していきますので、ぜひ宜しくおねがいします!
プログラミング

コメント