こんにちは、NECOです。
Android開発を行う際、
変数の中身を確認したいことが多々あります。
昨今のIDEならば、ステップ実行を行えば
比較的簡単に確認できたりしますが、
やはりデバッグの基本はログ出力かと思います。
Javaの場合、以下のようなコードで
確認するのが一般的かと思われます。
System.out.println("Cat#eat food=" + food);
ですが、Androidでは標準出力や標準エラーといったものが
存在しません。
じゃあどうすればいいんだー!ってことで登場するのが、
「logcat」です。
logcatとは、Androidにはログを集めて表示する機能で、
adbのシェルから表示したりフィルタリングするといったことが行えます。
ログを出力する場合は、以下のようになります。
Log.d("CatLife", "Cat#eat food=" + food);
またログを見る場合は、Eclipseプラグインならば
DDMSパースペクティブのLogCatビューから確認できます。
以下のように出力されます。
06-18 19:00:19.128 D 2664 CatLife Cat#eat food=カルボナーラ
コマンドラインでlogcatでログ表示する場合は
事前にadbサーバーを起動しておきます。Eclipseを使った場合は裏で自動で起動してます。
> adb start-server
adbが起動できたら、次はクライアントのシェルを起動します
> adb shell
adbのシェル上からlogcatを起動します。
$ logcat
以上で行えます。
一連の流れをまとめて実行する場合は、以下のコマンドで行えます。
> adb -s [デバイス識別子] logcat
デバイス識別子は、以下のコマンドで確認できます。
> adb devices
ログを出力して効率よくデバッグを進めましょう。
[参考] logcat | Android Developers
http://developer.android.com/intl/ja/guide/developing/tools/logcat.html
2011.6.19
NECO