isLoggable

android.util.Log#isLoggableで判定できる有効なログレベル。
Android標準では「INFO」レベル以上が有効になっているらしい。
じゃぁ「DEBUG」以上を有効にするにはどうするの?というと…。


http://developer.android.com/reference/android/util/Log.html#isLoggable(java.lang.String, int)


Javadocに「adb shell setprop」か「/data/local.prop」で設定するとある。
自分で管理するのが楽そうなlocal.propを作成する方を試してみた。
まずは/dataにlocal.propを作成。
local.propをテキストエディタで開いて編集。

log.tag.<YOUR_TAG>=<LOG_LEVEL>
例)log.tag.HOGE=DEBUG

上記形式で追記。


ソースコードは「isLoggable(, );」で判定する。


ここで注意。
local.propに追記した設定は端末の(再)起動時にロードされるぽい。
設定を追記しただけでアプリをADTから起動して試しても有効にはなっていない。
なんで有効にならないのかググってたら、海外のフォーラムで発見。
端末を再起動したら無事設定が有効になってたので解決。


2012.08.01追記
Aurora1ではlocal.propで適用できるけど、GalaxyNexusは適用できず…。

adb shell setprop log.tag.<TAG> <LEVEL>

setpropでは確実。
ただ、これは端末再起動すると消えてしまうぽいから注意。