一、建议使用Log代替System.out.println()
在此前,我依然在使用System.out.println()来输出日志,调试程序。但是在实际开发应用场景中使用System.out.println("")来输出日志是十分难以管理和查看的。至于好处在哪儿,我们且看Log的表现。
二、Log.
android stdio中的日志工具Log(android.util.Log),提供了下面几个方法来打印日志
- Log.d
- Log.e
- Log.i
- Log.r
- Log.m
- Log.w
其中.r与.m实质上是调用了Log.d 只不过是参数列表不同而已。
下面我写了Log中的几个方法
现在我们先设置一下android stdio中的Logcat过滤器,点击下面红色箭头的选项
1处输出我们的项目名称,2处输入Log方法的目标Tag
现在我们来运行一下我们新建的项目,来查看一下Log的输出情况
可以看见,当把Log的等级调为Assert时 并没有日志输出,让我们切换一下等级试试看
当把Log等级调为Error时,我们new的一个Exception已经出现在了日志面板,Go on...
注意现在的Log等级为Warn,这个时候输出的日志包括了Log.e 也就是说Warn等级会把Error等级的日志都一并输出
Info等级把Warn、Error等级的都输出了
Debug把下面几个等级的也都一并输出了,verbose会将所有的Log都输出。
在一个大型项目中,动则上万行的代码,N多个地方 如果一直使用System.out.println()来做日志输出的话,是非常难以管理和控制的。所以学习Logcat是非常基本的一个要求。