Skip to content

DNET_ADB

nishi_74322014 edited this page Sep 11, 2026 · 1 revision

Android Debug Bridge (adb)

概要

  • エミュレータや接続された端末と通信できる
    用途の広いコマンドライン ツール

  • adbは、android_sdk/platform-tools/ にある。

詳細

コンポーネント

クライアント

  • 開発マシンで実行される。
  • adbコマンドを送信する。

サーバー

  • 開発マシンでバックグラウンド プロセスとして実行される。
  • クライアントとデーモン間の通信を管理する。

デーモン

  • 端末でコマンドを実行する。
  • 各エミュレータ / 端末インスタンスで
    バックグラウンド プロセスとして実行される。

仕組

以下の順でデバッグが確立する。

adb クライアントを起動する

  • adb クライアントを起動すると、既に実行されている
    adb サーバ プロセスがあるかどうかを最初に確認する。

  • adb サーバ プロセスがない場合、クライアントはサーバを起動。

クライアント・サーバ間の接続

  • サーバーが起動すると、サーバはローカル TCP ポート 5037 をリッスン。
  • すべての adb クライアントはポート 5037 を使用して adb サーバと通信。

サーバとエミュレータ / 端末インスタンスの接続

サーバは、以下の方法でエミュレータ / 端末インスタンスへの接続をセットアップ。

  • サーバは、エミュレータ / 端末が使用する ポートをスキャンしインスタンスを見つける。

  • サーバは adb デーモンを見つけると、そのポートへの接続をセットアップする。

  • 各エミュレータ / 端末インスタンスはサーバへの連続ポート+1の接続をセットアップする。

  • 以下その例。

    エミュレータ 1、コンソール: 5554
    エミュレータ 1、adb: 5555
    エミュレータ 2、コンソール: 5556
    エミュレータ 2、adb: 5557
    

手順(デプロイ)

参考

移行メモ

  • 元 Wiki では見出しそのものが他ページへのリンクになっていた箇所 (「手順(デプロイ)」)は、GitHub Wiki では見出しからアンカが生成されるため、 見出しをプレーン・テキストとし、リンクは直下の本文に置いた。
  • PukiWiki のページ内アンカ(#xxxxxxxx)は GitHub Wiki では再現できないため、 他ページのアンカを指すリンクは「〜(ページ名 の該当節を参照)」の形に置き換えた。
  • 元 Wiki の行頭空白によるプレフォーマット・ブロックは、 フェンス付きコードブロックにした。

Tags: 移行, Android, adb, Android Debug Bridge, エミュレータ, 実機, デバッグ, ポート5037

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally