更正:
在模拟器和大多数设备上System.out.println
被重定向到 LogCat 并使用打印Log.i()
。对于非常旧的或自定义的 Android 版本来说,情况可能并非如此。
原来的:
没有控制台可以发送消息,因此System.out.println
消息丢失。同样,当您使用以下命令运行“传统”Java 应用程序时,也会发生这种情况javaw
.
相反,您可以使用Android Log class https://developer.android.com/reference/android/util/Log.html:
Log.d("MyApp","I am here");
然后您可以在以下位置查看日志Logcat在 Eclipse 中查看,或者运行以下命令:
adb logcat
养成查看 logcat 输出的习惯是很好的,因为这也是显示任何未捕获异常的堆栈跟踪的地方。
每个日志记录调用的第一个条目是日志标签,它标识日志消息的来源。这很有用,因为您可以过滤日志的输出以仅显示您的消息。为了确保与日志标签保持一致,最好将其定义为static final String
某处。
Log.d(MyActivity.LOG_TAG,"Application started");
有五种单字母方法Log
对应以下级别:
-
e()
- Error
-
w()
- 警告
-
i()
- 信息
-
d()
- Debug
-
v()
- 详细
-
wtf()
- 多么可怕的失败
The 文档说明了以下有关级别的内容 https://developer.android.com/reference/android/util/Log.html#ASSERT:
除开发期间外,决不应该将 Verbose 编译到应用程序中。调试日志被编译但在运行时被删除。错误、警告和信息日志始终保留。