在我做任何更改之前,我为所有级别打印了Log.isLoggable(MYAPP_TAG)
。
I/System.out﹕ MYAPP Loggable Level: [V:false][D:false][I:true][W:true][E:true]
然后我做了adb shell setprop log.tag.MYAPP_TAG WARN
。
Log.isLoggable(MYAPP_TAG)
消息现在变为
I/System.out﹕ MYAPP Loggable Level: [V:false][D:false][I:false][W:true][E:true]
但是,仍然可以在Logcat中观察到所有日志消息(Log.v
,Log.d
等)。
02-03 13:18:28.050 3284-3284/com.XX V/MYAPP_TAG﹕ onServiceConnected
02-03 13:18:28.050 3284-3284/com.XX D/MYAPP_TAG﹕ onServiceConnected
为什么?
答案 0 :(得分:2)
我认为你需要包装你的日志:
if (Log.isLoggable("MY_TAG", Log.VERBOSE)) {
Log.v("MY_TAG", "Here's a log message");
}
否则android似乎忽略了你的设置;似乎Log.v, Log.d, etc.
没有检查LogLevel。