adbは”Android Debug Bridge”の略で、その名の通りAndroidのデバッグをサポートするツール群です。
adbはAndroid SDKに含まれているのですぐに使うことができます。
というわけで今回はadbの活用術をご紹介したいと思います。
※本記事の内容はUbuntu 10.04、Android SDK r6の環境で確認しました。
まず、adbが本当に使えるのか確認してみましょう。
以下のコマンドを実行してみてください。
$ adb Android Debug Bridge version 1.0.26
adbが正しくインストールされていれば上記のようにadbのヴァージョン情報と一緒に、
adbのヘルプが表示されるはずです。
それではadbの便利な使い方を順に紹介していきます。
接続されているエミュレータ/デバイスを確認する
開発環境に接続されているエミュレータ、もしくはデバイスを確認することができます。
以下のコマンドをタイプしましょう。
# adb devices List of devices attached CB511JLV3V device
上記の例では実機が1つ接続されていることが分かります。
エミュレータ/デバイスにAndroidアプリケーション(.apkファイル)をインストールする
エミュレータ/デバイス上に直接Androidアプリケーションをインストールすることができます。
たとえばsample.apkというアプリケーションをインストールしたい場合は以下のようにします。
# adb install sample.apk
エミュレータ/デバイスにファイルをコピーする
開発環境上からエミュレータ/デバイス上にファイルをコピーすることができます。
たとえば、開発環境上にあるsample.pngという画像をSDカード上にコピーしたいときは以下のようにします。
# adb push sample.png /sdcard/
コマンド実行後、端末側のSDカードを確認してみてください。
sample.pngがアップロードされているはずです。
エミュレータ/デバイスからファイルをコピーする
エミュレータ上にあるファイルを開発環境上にコピーすることも可能です。
# adb pull /sdcard/sample.png /tmp
上記はSDカード上にあるsample.pngという画像を開発環境上の/tmpにコピーする場合のサンプルになります。
ログを見る
エミュレータ、およびデバイスの動作ログを見たいときは以下のようにします。
# adb logcat
Eclipseをわざわざ起動させなくてもログを確認できるのでとても便利です。
複数の端末が接続されている場合
これまで紹介してきた活用術はどれも接続されているエミュレータ/デバイスが1つの場合にのみ有効です。
たとえば、
$ adb devices List of devices attached CB511JLV3V device emulator-5554 device
上記のように同時に接続されている端末が複数ある場合は、どの端末を対象とするのかを指定しないといけません。
以下のオプションを実行時に指定することができます。
- -d:USBで接続されている実機に対してコマンドを実行する
- -e:エミュレータに対してコマンドを実行する
- -s:指定したシリアル番号の端末に対してコマンドを実行する
たとえば、実機のSDカードにデータをコピーして、エミュレータにアプリケーションをインストールしたい場合は以下のようになります。
$ adb -d push sample.png /sdcard $ adb -e install RockPlayer_0.2.8_Beta_v6_vfp.apk 463 KB/s (2621291 bytes in 5.522s) pkg: /data/local/tmp/RockPlayer_0.2.8_Beta_v6_vfp.apk Success
これらのコマンドを全て使いこなすことができれば、効率よくAndroidアプリケーションの開発ができると思います。