在程序开发过程中,我们经常需要输出某些值,通常我们可以通过system.out.println等相关的方法输出,但是相比于Log,println()有蛮多的缺点,例如日志开关不可控、不能添加日志标签、日志没有级别区分等等。
在Android Studio中,我们通过Logcat来查看输出结果。
Log有5个方法来供我们打印日志
级别:verbose<debug<info<warn<error<Assert
函数 | 用途 | 级别 |
---|---|---|
Log.v() | 用于打印那些最为琐碎的、意义最小的日志信息 | verbose |
Log.d() | 用于打印一些对你调试程序和分析问题有帮助的调试信息 | debug |
Log.i() | 用于打印一些比较重要的数据,一些你非常想看到的、可以帮助你分析用户行为的数据 | info |
Log.w() | 用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复 | warn |
Log.e() | 用于打印程序中的错误信息,必须尽快修复 | error |
Log.wtf() | 用来打印正常情况下永远不会发生bug | Assert |
简单示范:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
Log.d("MainActivity","onCreate execute")
}
}
代码中Log,d()方法中有2个参数,第一个是tag,一般传入当前的类名,用于对打印信息的过滤:第二个是msg,是打印的内容。
在运行后,查看底部工具栏的Logcat,
此时,信息很多,很难找到我们代码中需要输出的信息,这时候,就可以使用过滤器
show only selected application | 显示当前选中程序的日志 |
Firebase | Google提供的一个开发者工具和基础构架平台 |
No Filters | 相当于没有过滤器,把日志都输出 |
Edit Filter Configuration | 自定义过滤器 |
为了查询到我们之前代码写的信息,我们可以选择Edit Filter Configuration来自定义查询信息,如下 Filter Name是设置的过滤器的名字,后面的都是响应的查询条件。
确定之后,我们就能很清楚明了的看到我们代码写的输出信息了。
还可以使用关键字过滤,直接输入需要查找的信息,也能过滤信息。