浅谈Android的日志工具
Android 的日志工具Log
如何使用Android的日志工具
首先我们来了解Android为我们提供了哪几种打印日志的方法
- Log.v()。用于打印一些最为基本的,意义最小的日志信息。对应级别为Verbose。
- Log.d()。用于打印一些调试信息。对应级别为Debug。
- Log.i()。用于打印一些比较重要的数据信息。对应级别为Info,级别比Debug要高一些。
- Log.w()。用于打印一些警告信息。对应级别为Warn。
- Log.e()。用于打印一些错误信息,一般出现这个问题就说明 你的程序存在一些错误信息。对应级别为Error。
下面我们就在HelloWorld项目中试一试日志工具。
首先创建一个HelloWorld的工程,并在OnCreate的方法中添加一行打印日志的语句。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("MainActivity", "onCreate: ");
}
}
在Log.i()方法中传入了两个参数,一个是tag,一般用你的当前类名来命名,主要是对打印信息进行一个过滤;另一个参数是msg,主要用来打印你想打印的一些内容。运行结果如下:
在对应的输出内容中我们不仅可以看到打印的信息,我们还能看到打印的时间以及用的那种打印方式。
下面我们来看看logcat的对应日志级别控制。
在logcat中主要有5个级别,刚好对应我们打印日志文件的5个方法。当我们使用不同的级别的时候,在级别以下的打印的语句是不会在控制台显示出来的。
我们接下来看看logcat的一个非常有用的功能,添加过滤器。
目前只有三个过滤器,Show only selected application表示只显示当前选中程序的日志,Firebase是谷歌提供的一个分析工具,No Filters相当于没有过滤器,会把所有的日志都显示出来。当然我们也可以自定义过滤器。
如上图我们自定义了一个str的过滤器,这个时候我们选中我们自定义的过滤器,重新执行程序,你会发现原来的打印日志没有了,当我们把打印语句修改为 Log.i(“str”, "onCreate: ");之后再次运行就能在我们自定义的过滤器下看到这行日志了。
可能很多人喜欢用Syste.out.println();来打印日志,以前我也喜欢这样做,因为在刚开始学习的时候我只掌握了这种方法,但这种方法存在一些缺点,比如说日志文件不可控制,打印时间无法显示,不能添加过滤器,日志没有级别区分…
对于使用Log已经把上面存在的问题大都解决好了,在Log使用中也存在一些快捷键的方式。比如说你想打印一条Debug级别的日志,你只需要输入logd,然后按下Tab键,系统就会自动的帮你补全代码。还有一个小技巧大家也可以去掌握,我们在OnCreate()方法的外面输入logt,然后按下Tab键,就会自动生成一个TAG常量。如下所示:
public class MainActivity extends AppCompatActivity {
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i(TAG, "onCreate: ");
}
}
推荐阅读
-
Android开发实现的Intent跳转工具类实例
-
Android开发中超好用的正则表达式工具类RegexUtil完整实例
-
Android开发实现查询远程服务器的工具类QueryUtils完整实例
-
Android 数据存储之 FileInputStream 工具类及FileInputStream类的使用
-
浅谈Android onTouchEvent 与 onInterceptTouchEvent的区别详解
-
Android开发中的文件操作工具类FileUtil完整实例
-
浅谈Android单元测试的作用以及简单示例
-
浅谈Android Content Provider的使用
-
非常实用的Android图片工具类
-
浅谈android中数据库的拷贝