解説公開日: 約 5 分で読めます

ADB とは? Android Debug Bridge をわかりやすく解説

ADB(Android Debug Bridge)は、パソコンと Android 端末をつなぐツールです。3 つの構成要素、接続が許可される仕組み、USB と Wi-Fi の違い、fastboot との違いをわかりやすく解説します。

ADB は Android Debug Bridge の略で、パソコンから Android のスマホ、タブレット、テレビと通信するためのツールです。ADB を使うと、アプリのインストール、ログの確認、ファイルのコピー、シェルコマンドの実行、画面の操作をすべてパソコンから行えます。Google が Android SDK に同梱しており、Android Studio で実行ボタンを押すたびに裏で使われているのもこのツールです。

3 つの部分からなる「橋」

ADB は 1 つのコマンドに見えますが、実際には 3 つのプログラムが連携して動いています。

部分動く場所役割
クライアントパソコン入力する adb コマンドです。リクエストをサーバーに送ります。
サーバーパソコン(バックグラウンド)接続中のデバイスを管理し、クライアントとデバイスの間でメッセージを中継します。ポート 5037 で待ち受けます。
デーモン(adbd)Android 端末コマンドを受け取り、端末上で実行します。

最初に adb コマンドを入力したとき、サーバーが動いていなければクライアントがサーバーを起動します。サーバーは USB とネットワーク上のデバイスを探します。adb shell ls を実行すると、クライアントがサーバーにリクエストを渡し、サーバーがそれを端末の adbd に転送し、出力が同じ経路で戻ってきます。

そのため、ADB サーバーを動かすプログラムは一度に 1 つにすべきです。Android Studio、scrcpy、ターミナルがそれぞれ USB 接続を取ろうとすると取り合いになり、「device busy」などのエラーが出ます。たいていは adb kill-server を実行するか、ほかのツールを閉じれば直ります。詳しくは デバイスが busy / unauthorized になるときの対処法 をご覧ください。

端末がパソコンを受け入れる仕組み

ADB はできることが多いため、Android はどのパソコンにも使わせるわけではありません。

  1. USB デバッグがオンになっている必要があります。 USB デバッグは開発者向けオプションの中にあり、開発者向けオプションはビルド番号を 7 回タップするまで隠れています。USB デバッグを有効にする方法 をご覧ください。
  2. 端末がパソコンを許可する必要があります。 パソコンはそれぞれ独自の RSA 鍵を持っています。初めて接続したとき、スマホにはその鍵のフィンガープリントとともに「USB デバッグを許可しますか?」が表示されます。許可をタップするまで端末は unauthorized と表示され、何も使えません。

この許可は、開発者向けオプションの USB デバッグ承認の取り消し でいつでも取り消せます。

USB と Wi-Fi

ADB は 2 種類の接続で使えます。

  • USB ケーブル: 標準の方法です。高速で安定しており、設定もいちばん簡単です。
  • ネットワーク: 従来の adb tcpip(スマホをポート 5555 に切り替えるために一度だけケーブルが必要)か、Android 11 以降の ワイヤレス デバッグ(コードでペア設定し、ケーブルは一切不要)を使います。違いは adb tcpip とワイヤレス デバッグの違い で解説しています。

ほとんどのテレビは USB でパソコンにつなげないため、ネットワーク ADB が唯一の選択肢です。ADB で Android TV を操作する方法 をご覧ください。

ADB と fastboot の違い

どちらも同じ Android SDK Platform-Tools に入っているため、よく混同されます。

ADBfastboot
使えるときAndroid(またはリカバリー)が動いているときAndroid が起動する前の、ブートローダー / fastboot モードのとき
用途アプリ、ログ、ファイル、シェル、画面パーティションへの書き込み、ブートローダーのアンロック
端末側adbdブートローダー

両者をつなぐのが adb reboot bootloader です。動作中のスマホを fastboot モードにします。そこから何ができるかは fastboot モードの解説 をご覧ください。

ADB を手に入れる方法

主な方法は 2 つです。

  • Android SDK Platform-Tools: Google が Windows、macOS、Linux 向けに無料で配布しています。解凍してフォルダを PATH に追加すれば、ターミナルで adb を使えます。
  • ブラウザで: Chrome と Edge は WebUSB で USB デバイスと通信できるため、Web ページが ADB プロトコルを直接話せます。ADBKit はこの仕組みで動いており、USB なら何もインストールする必要がありません。技術的な仕組みは WebADB と WebUSB とは で解説しています。

ADB は安全?

ADB はデバッグ用のツールなので、許可したパソコンに深いアクセス権を与えます。アプリのインストール、アプリのログの読み取り、共有ストレージからのファイルのコピーが可能です。自分のパソコンで、何を実行しているか分かっていれば安全です。次の習慣を守りましょう。

  • 信頼できるパソコンにだけ許可をタップする。
  • 必要なくなったら USB デバッグをオフにする。特に毎日持ち歩くスマホでは大切です。
  • 公共の Wi-Fi や共用の Wi-Fi でネットワーク ADB をオンのままにしない。

次のステップ