Android日志工具Log的使用

举报
振华OPPO 发表于 2022/03/04 12:20:55 2022/03/04
【摘要】 Androi中的日志工具类是Log(android.util.Log),这个类提供了如下5种方法来供我们打印日志。方法作用Log.v()用于打印那些最为繁琐的、意义最小的日志信息。对应级别是verbose,是Android日志里面级别最低的一种。Log.d()用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别debug,比verbose高一级。Log.i()用于打印...
Androi中的日志工具类是Log(android.util.Log),这个类提供了如下5种方法来供我们打印日志。
方法 作用
Log.v() 用于打印那些最为繁琐的、意义最小的日志信息。对应级别是verbose,是Android日志里面级别最低的一种。
Log.d() 用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别debug,比verbose高一级。
Log.i() 用于打印一些比较重要的数据,这些数据应该是你非常想看到的、可以帮助你分析用户行为数据。对应级别info,比debug高一级。
Log.w() 用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别warn,比info高一级。
Log.e() 用于打印程序中的错误信息,比如程序进入catch语句当。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别error,比warn高一级。

@TOC

一、日志方法

我们先来演示一下Log.d()的用法: 它需要传入两个参数,第一个参数是tag,一般传入当前的类名就好,主要用于对打印信息进行过滤;第二个参数是msg,即想要打印信息的具体内容。

Log.d("MainActivity","Hello Debug");

我们运行之后来看下控制台Logcat的内容: 不仅包含了打印日志内容和tag名,还有包含程序的包名、打印时间以及应用进程的进程号。
在这里插入图片描述

二、快捷键

对于java选手来说,sout就是最喜欢的快捷键。那么对于Android选手,打印日志也有快捷键,只需要输入logd,然后按下Tab键,就会自动帮你补全一条完整的打印语句。同理,输入logi、logw等等。
在这里插入图片描述
另外,由于Log的所有打印方法都要求传入一个tag参数,每次都写一遍显然太过麻烦,这里有个小技巧,我们在onCreate()的方法外面输入logt,然后按下Tab键补全,自动生成一个TAG常量。
在这里插入图片描述

三、过滤器

除了快捷键以外,logcat中还可以轻松添加过滤器,可以看到目前我们所有的过滤器:
在这里插入图片描述
目前有4个过滤器:

  • show only selected application表示只显示当前选中程序的日志。
  • Firebase是谷歌提供的一个分析工具,我们可以不用管它。
  • No Filters相当于没有过滤器,会把所有日志显示出来。
  • Edit Filter Configuration是自定义过滤器,比如下面的MainActivity就是我自定义的一个过滤器。

我们来演示下如何自定义过滤器:

点击Edit Filter Configuration,会弹出一个过滤器配置界面。如何给过滤器起名为MainActivity,并且让它对MainActivity的tag进行过滤。
在这里插入图片描述
我们点击这个过滤器,发现我们的日志被筛选为先几条tag名为MainActivity的日志了。
在这里插入图片描述

四、日志级别控制

学完了过滤器,我们再来看下logcat中日志级别的控制吧。logcat主要有6个级别,在第一部分中已经介绍过了。
在这里插入图片描述
给大家整理了一下日志等级表:

log 等级 提示颜色
verbose 冗余信息 ,级别最低 黑色
debug 调试信息 蓝色
info 普通信息 绿色
warning 警告信息 橙色
error 错误信息 红色
assert 断言,级别最高

当选择级别是verbose时,也就是最低等级。不管我们使用哪一个方法打印日志,这条日志一定会显示出来。如果我们选中debug,那么只有使用debug以上级别的方法打印的日志才会显示出来,以此类推。

String returnData=data.getStringExtra("data_return");
Log.v(TAG,returnData);
Log.d(TAG,returnData);
Log.i(TAG, returnData);
Log.w(TAG, returnData);

我们运行程序,打印以上四种级别的信息,此时选择verbose级别:
在这里插入图片描述
我们选择info等级,发现只显示info以及warn的日志:
在这里插入图片描述

五、关键字过滤

使用关键字可以进一步过滤我们想看的日志信息,而且关键字过滤支持正则表达式,有了这个特性,我们可以构建出更加丰富的过滤条件。
在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。