欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

浅谈Android的日志工具

程序员文章站 2022-03-05 21:22:44
...

Android 的日志工具Log

               如何使用Android的日志工具

首先我们来了解Android为我们提供了哪几种打印日志的方法

  1. Log.v()。用于打印一些最为基本的,意义最小的日志信息。对应级别为Verbose。
  2. Log.d()。用于打印一些调试信息。对应级别为Debug。
  3. Log.i()。用于打印一些比较重要的数据信息。对应级别为Info,级别比Debug要高一些。
  4. Log.w()。用于打印一些警告信息。对应级别为Warn。
  5. 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,主要用来打印你想打印的一些内容。运行结果如下:
浅谈Android的日志工具
在对应的输出内容中我们不仅可以看到打印的信息,我们还能看到打印的时间以及用的那种打印方式。

下面我们来看看logcat的对应日志级别控制。
浅谈Android的日志工具
在logcat中主要有5个级别,刚好对应我们打印日志文件的5个方法。当我们使用不同的级别的时候,在级别以下的打印的语句是不会在控制台显示出来的。

我们接下来看看logcat的一个非常有用的功能,添加过滤器。

浅谈Android的日志工具
目前只有三个过滤器,Show only selected application表示只显示当前选中程序的日志,Firebase是谷歌提供的一个分析工具,No Filters相当于没有过滤器,会把所有的日志都显示出来。当然我们也可以自定义过滤器。
浅谈Android的日志工具
如上图我们自定义了一个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 android