Android-LogCat日志工具(二)

摘要:
LogCat中是可以很轻松地添加过滤器的,如下图的两个长框Allmessages过滤器也就相当于没有过滤器,会把所有的日志都显示出来。看完了过滤器,再来看一下LogCat中的日志级别控制吧。LogCat中主要有5个级别,分别对应着我在上一节介绍的5个方法当前我们选中的级别是verbose,也就是最低等级。你可以做下试验,如果你把LogCat中的级别选中为info、warn或者error时,我们在onCreate()方法中打印的语句是不会显示的,因为我们打印日志时使用的是Log.d()方法。

既然是Java语言,那么对于很多人来说,用System.out.println() 方法来打印日志是最熟悉、最简单不过了。不过在真正的项目开发中,是极度不建议使用 System.out.println()方法的!

为什么 System.out.println()方法会这么遭大家唾弃呢?经过老师和同学极度鄙视之后,发现这个方法除了使用方便一点之外,其他就一无是处了。方便在哪儿呢?在 Eclipse中你只需要输入 syso,然后按下代码提示键,这个方法就会自动出来了,相信这也是很多 Java新手对它钟情的原因。那缺点又在哪儿了呢?这个就太多了,比如日志打印不可控制、打印时间无法确定、不能添加过滤器、日志没有级别区分……

LogCat 中是可以很轻松地添加过滤器的,如下图的两个长框

Android-LogCat日志工具(二)第1张

All messages 过滤器也就相当于没有过滤器,会把所有的日志都显示出来。

com.test.helloworld 过滤器是我们运行 HelloWorld 项目时自动创建的,点击这个过滤器就可以只看到 HelloWorld 程序中打印的日志。

那可不可以自定义过滤器呢?当前可以,我们现在就来添加一个过滤器试试。

点击图中的 加号会弹出一个过滤器配置界面。我们给过滤器起名叫 messages,并且让它对名为 messages 的 Tag 进行过滤

Android-LogCat日志工具(二)第2张

 点击 OK,你就会发现你已经多出了一个 messages过滤器,当你点击这个过滤器的时候,你会发现刚才在 onCreate()方法里打印的日志没了,这是因为 messages这个过滤器只会显示 Tag名称为 messages的日志。你可以尝试在 onCreate()方法中把打印日志的语句改成 Log.d("messages", "我是BigBoy520");或许现在你还没感受到过滤器的好处,但学习时间很长,以后会慢慢遇到。

看完了过滤器,再来看一下 LogCat 中的日志级别控制吧。LogCat 中主要有 5 个级别,分别对应着我在上一节介绍的 5 个方法

Android-LogCat日志工具(二)第3张

当前我们选中的级别是 verbose,也就是最低等级。这意味着不管我们使用哪一个方法打印日志,这条日志都一定会显示出来。而如果我们将级别选中为 debug,这时只有我们使用 debug及以上级别方法打印的日志才会显示出来,以此类推。你可以做下试验,如果你把LogCat 中的级别选中为 info、warn 或者 error 时,我们在onCreate()方法中打印的语句是不会显示的,因为我们打印日志时使用的是 Log.d()方法。

日志级别控制的好处就是,你可以很快地找到你所关心的那些日志。相信如果让你从上千行日志中查找一条崩溃信息,你一定会抓狂的吧。而现在你只需要将日志级别选中为 error,那些不相干的琐碎信息就不会再干扰你的视线了。

最后,谢谢大家的关注。来一句诗词 :九曲黄河万里沙,浪淘风簸自天涯

上一篇:Android-LogCat日志工具(一)http://www.cnblogs.com/hxb2016/p/6070014.html

添加随笔
标题
内容(TinyMCE编辑器,支持拖放/粘贴上传图片)查看自动保存内容
上传图片插入代码(推荐)插入代码
段落
字体
字体大小

免责声明:文章转载自《Android-LogCat日志工具(二)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇由DataSet导出生成excel的几种方法php远程下载文件并保存到指定路径下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Dapper系列之一:Dapper的入门(多表批量插入)

Dapper只是一个完全开源的代码文件。您可以在项目中的任何位置实现数据到对象ORM操作,其大小小,速度快。Dapper的优点:1。Dapper是一个轻量级ORM类。该代码是一个SQLMapper.cs文件,编译后通常约为40k dll;2.Dapper,快点,你为什么说得快?因为Dapper的速度接近IDataReader,所以列表的数据比DataTabl...

buildroot使用介绍【转】

整个Buildroot由Makefile脚本和Kconfig配置文件组成。就像编译Linux内核一样,您可以编译一个完整的Linux系统软件,该软件可以通过buildroot配置和menuconfig修改直接写入机器。使用buildroot构建基于qemu的虚拟开发平台。请参阅通过buildroot+qemu构建ARM Linux虚拟开发环境。工具链--˃配...

docker run hangs问题排查记录

1.故障描述过去两天遇到了一个非常奇怪的问题。现在完整的故障描述如下:1)首先,我的同事告诉我,K8S集群中的一个工作节点将其状态更改为NoReady,并且在节点kubelet_truntime的错误日志中发现了大量此类日志E060301:50:51.45511776268remote。go:332]ExecSync1f0e3ac13faf224129bc4...

windows下mstsc 远程Ubuntu 教程

为远程桌面控制设置Ubuntu 16.04的缺点是重新启动系统需要使用监视器登录系统。首先,我们将Ubuntu远程控制设置为允许远程连接,进入系统-˃首选项-˃桌面共享,或直接搜索桌面共享。如图所示,选中此项,然后选中安全项,并设置远程密码。...

微信小程序的模板消息与小程序订阅消息

有关获取分发权限的更多信息,请参阅applet侧消息订阅接口wx的步骤3。requestSubscribeMessage。有关发出订阅消息的调用接口的更多信息,请参阅服务器端消息发送接口subscribeMessage。sendwx。requestSubscribeMessage(Objectobject)基本库2.8.2。必须填写参数Objectobjec...

java--枚举

前言:Java中的enum也是一种类类型,它与一般类的区别在于1.世界上只有一个实例2.不能有公共构造函数3。您不能继承和继承枚举事例publicenumHttpCode{SUCCESS(200,“操作成功”)。//定义的每个枚举项都等效于通过构造函数HttpCode(int code,Stringmessage)实例化没有枚举项的通用HttpCo...