ファイル名は「adb.exe」です。Windowsのコマンドプロンプトで使用する場合には、このファイルへのパスを環境変数PATHに設定しておくことを推奨します。
(本書のインストール手順に従ってインストールされた方は、設定済みです。)
このツールを用いると現在利用可能なAndroid実機・エミュレータの列挙、Androidへのシェルコマンド発行、Androidデバイスへのファイル転送、Androidデバイスからのファイルダウンロード、アプリケーションのインストールおよびダウンロードなどが可能になります。
実は、Eclipseからアプリケーションをコンパイル・実行したときには、ADBが裏側で様々な処理を行ってくれています。
ADBは3つの機能から構成されています。
● ADB Client
● ADB Server
● ADB Daemon
たとえば、Eclipse上からアプリケーションを実行すると、EclipseおよびADTによってAPKファイルが作成され、ADBを通じてAndroid端末にインストール・実行されます。
ADB Clientからインストールコマンドが発行され、ADB Serverを通じてADB Daemonにインストール命令が伝わるというイメージです。
ただし、様々な要因によりADB Serverが応答しなくなる場合があり、このような場合にはADB Serverを再起動すると問題が解消することがあります。
ADB Serverを停止するには以下のコマンドを使用します。
C:>adb kill-server C:>
ADB Serverを開始するには以下のコマンドを使用します。
C:>adb start-server * daemon not running. starting it now on port 5037 * * daemon started successfully * C:>
また、ADB Serverに接続中のADB Daemonの一覧を確認するには、以下のコマンドを使用します。
C:>adb devices List of devices attached 0123456789012345 device emulator-5554 device C:>
エミュレータが起動している場合は「emulator-****」という表示があるはずです。
上記例では、Android実機を1台、エミュレータを1台認識していることがわかります。
他にも数多くのADBコマンドがありますが、その中の一部を紹介します。
コマンド | 概要 |
---|---|
adb shell | Androidデバイスのシェルに接続する。 |
adb help | adbコマンドの使い方を表示する。 |
adb logcat | Androidデバイスのログを表示する。 |
adb install | アプリケーションをインストールする。 |
adb uninstall | アプリケーションをアンインストールする。 |
adb push | ローカルにあるファイルをAndroidデバイスに転送する。 |
adb pull | Androidデバイスにあるファイルをローカルに転送する。 |
たとえば、アンインストールはADBコマンドを知らなくとも、Androidデバイス上から操作すればいいだけですが、アンインストール操作を行うには5回以上のタップ操作が必要になります。
しかし、ADBコマンドを知っていればコマンド1回で行うことができます。アプリケーションの試験で何度も行うことになるオペレーションですので、少しでも効率化しておきたいところです。
ファイルの転送や、ファイルのダウンロードも「DDMSパースペクティブ」から行うことはできますが、何度も同じファイルを操作する場合は、ADBコマンドから行った方が効率的です。
これらのコマンドはADB Serverに接続している特定のAndroidデバイスに対して実行するコマンドです。
ADB Serverに複数のADB Clientが接続されている場合は、どのClientに対してコマンドを実行するか指定しなくてはいけません。
そのために用いるのがオプションです。
オプション | 概要 |
---|---|
-d | Android実機が1台繋がっている場合に、そのAndroid実機を指定する |
-e | エミュレータが1つだけ起動している場合に、そのエミュレータを指定する |
-s | エミュレータを2つ以上起動していたり、実機端末が2台以上繋がっている場合にシリアル番号を指定する。 シリアル番号は、「adb devices」コマンドもしくはDDMSパースペクティブで確認することが可能。 |
ADB ServiceがAndroid実機とエミュレータを認識している場合に、Android実機に「adb install」コマンドを使って「HelloWorld.apk」をインストールする例です。「-d」オプションの付ける位置に注意してください。
C:>adb devices List of devices attached 0123456789012345 device emulator-5554 device C:>adb -d install HelloWorld.apk 83 KB/s (86163 bytes in 1.010s) pkg: /data/local/tmp/HelloWorld.apk Success C:>
「-d」オプションを指定しないと、ADBコマンドは2つのうちどちらにインストールすればよいかわからず、エラーとなってしまいます。