我正在通过 gradle/maven 使用 slf4j-android 1.6.1-RC1,当我在模拟器中运行应用程序时,当我调用 Log.debug 时,Android Studio 0.3.5 下的 Logcat 中没有任何结果。
只是为了好玩,我尝试了以下方法:
private final Logger Log = LoggerFactory.getLogger(MainActivity.class);
...
Log.debug("Got this far, woohoo!");
android.util.Log.d("blah","I am here!");
Log.d 的输出确实出现在 Logcat 中,但 Log.debug 没有。
我检查了 Log.isDebugEnabled() 并确定它设置为 false。但这似乎很奇怪,因为 android.util.Log.d 工作得很好。slf4j 不应该使用相同的日志级别吗?事实上,slf4j 不应该只是在幕后调用 android.util.Log 吗?
我还用 Log.error 替换了 Log.debug 并且确实有效。所以问题似乎是 slf4j 以某种方式决定不应该发出调试事件,即使 Log.d 会发出它们。
如何让 slf4j 像 android.util.Log 一样遵守在 Android Studio 中的 Logcat 中设置的日志级别?