第一章 日志工具

Log

Android 中的日志工具类是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 高一级。

打开MainActivity,在onCreate()方法中添加一行打印日志的语句:

protected void onCreate(Bundle saveInstanceState){
 super.onCreate(saveInstanceState);
 setContentView(R.layout.activity_main);
 Log.d("MainActivity", "onCreate execute");
}

Log.d() 方法中传入了两个参数,第一个参数是tag,一般传入当前的类名就好,主要用于对打印信息进行过滤,第二个参数是msg,即想要打印的具体内容。

点击顶部工具栏上的运行按钮,或者使用快捷键Shift + F10(Mac 系统是control + R),等程序运行完毕,点击Android Studio 底部工具栏的Android Monitor,在logcat中就可以看到打印信息了。
在这里插入图片描述
其中,不仅可以看到打印日志的内容和tag 名,就连程序的包名,打印的时间以及应用程序的进程号都可以看到。

为什么使用Log而不使用System.out

System.out.println() 在Eclipse中只需要输入syso,然后按代码提示键,这个方法就会自动出来了,缺点 日志打印不可控制,打印时间无法确定,不能添加过滤器,日志没有级别区分······

快捷输入,在Android Studio 中,只需要输入logd,然后按下Tab键,就会帮你自动补全一条完整的打印语句,输入logi,logw,按下Tab键,以此类推。另外,由于Log的所有打印方法都要求传入一个tag参数,在onCreate()方法的外面输入logt,然后按Tab键,这时就会自动以当前类名作为值生成一个TAG常量。

private static final String TAG = "MainActivity";

添加过滤器
在这里插入图片描述
目前只有3个过滤器,Show only selected application 表示只显示当前选中程序的日志,Firebase 是谷歌提供的一个分析工具,No Filters 相当于没有过滤器,会把所有的日志都显示出来。
点击Edit Filter Configuration 会弹出一个过滤器配置界面。给过滤器起名叫data,并且让它对名为data的tag进行过滤。
在这里插入图片描述
点击OK,就会发现已经多出一个data过滤器。data这个过滤器只会显示tag名称为data 的日志。

logcat中的级别控制,logcat中有5个级别,分别对应着上述5个方法。
在这里插入图片描述
当前选中的级别是verbose,也就是最低等级,这意味着不管使用哪个方法打印日志,都一定会显示出来。而如果将级别选为debug,只有用debug及以上级别方法打印的日志才会显示出来,以此类推。

关键字过滤
在这里插入图片描述
可以在输入框输入关键字的内容,这样只有符合关键字条件的日志才会显示,能够快速定位到想看的日志,关键字过滤支持正则表达式,可以构建出更加丰富的过滤条件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值