2011/02/03

ADB (Android Debug Bridge)

ADB こと Android Debug Bridge についてはAndroid Adb Analyse が詳しい。
しかし、そこそこ情報量があるのと、SC-02B でのいたずら目的にはこの全てを読む必要はない。
というわけで、必要そうなことだけ簡単にまとめてみる。

ADBでできることは主に以下の通り。

・デバイスに対してコマンドを発行する(デバイス上でコマンドを実行させる)
・デバイスにファイルをコピーする
・デバイスからファイルをコピーする
・adb serverの起動/停止


ADBは以下の3つからなる。

・クライアント
開発機(PC)上で実行される。shell(Windows ならコマンドプロンプト) から adb コマンドを発行することで実行される。
Eclipse のプラグインの ADT Plugin や Android SDK に含まれている Dalvik Debug Monitor Service (DDMS) もこの1つ。
クライアントを実行すると、サーバが起動しているかどうかチェックする。サーバが起動していない場合はサーバを起動する。
Windows なら Android SDK に含まれる adb.exe。

・サーバ
開発機(PC)上で実行されるバックグラウンドプロセス。クライアントとデーモン間の通信を管理する。
Windows なら adb.exe。クライアントとしての adb.exe とは別にサーバ用の adb.exe が実行される。

・デーモン
デバイス上で実行されるバックグラウンドプロセス。プロセス名は adbd。本体は /sbin/adbd にある。


シェルからコマンドを発行する
→ クライアントからサーバにコマンドを発行する
→ サーバがデーモンにコマンドを発行する
→ デーモンがデバイス上でコマンドを実行する
→ デーモンがコマンドを実行した結果をサーバに返す
→ サーバからクライアントに結果を返す
という流れ。

こんな感じで ADB を使えばデバイスを外から操ることができる。

0 件のコメント:

コメントを投稿