Android开发笔记(一百九十)增强了日志功能的第二版Logcat
从Android Studio Dolphin开始,查看应用日志的Logcat全面升级,堪称Logcat 2.0版本。下面就让我们看看LogcatV2.0究竟带来了什么新特性吧。 对于Android Studio的老用户来说,小海豚版本新出的LogcatV2.0在用法上有不小的差异,一开始会让人比较茫然。有些老用户可能更习惯之前的Logcat,可以通过以下办法关闭LogcatV2.0,重新启用旧的Logcat功能。 打开Android Studio,依次选择菜单“File”——“Settings”,在弹出的设置窗口的左侧列表选择最后一项“Experimental”,接着在窗口右边找到Logcat区域,把“Enable new Logcat tool windows”的复选框取消勾选,表示禁用新版的Logcat窗口,设置窗口如下图所示。
取消勾选之后,不要忘记单击设置窗口右下角的OK按钮,然后重新启动Android Studio,即可在查看应用日志时恢复原来的Logcat窗口。 不过LogcatV2.0毕竟做了不小的改进,还是值得我们好好探索,比如以下三个新特性就非常实用。
1、格式化排版
新版Logcat对日志信息做了类似表格的排版处理,日志内容从左往右依次包括:时间、地点、人物、事件,不同等级的日志文字还用颜色区别开来,看上去就是井井有条的模样。如下图所示。
其中日志等级从低到高说明如下:
V:表示冗余信息。
D:表示调试信息,可把程序运行时的变量值打印出来,方便跟踪调试。
I:表示一般消息。
W:表示警告信息。
E:表示错误信息,比如可能导致程序崩溃的异常。
2、灵活的过滤语法
新版Logcat只有两类过滤条件,其中窗口顶部左侧的下拉框可选择待调试的设备,右侧的编辑框可输入详细的过滤语句。过滤语句默认是“package:mine”,字面意思是“我的包”,其实就是当前项目下的所有模块。如果当前项目只包含app一个模块,那么Logcat窗口只显示app模块的应用日志;如果当前项目包含二十个模块(从chapter01到chapter20),那么Logcat窗口会显示从chapter01到chapter20总共二十个应用的日志。 根据以上描述可知,package:mine是按照项目级别过滤,不是按照模块级别过滤。如果只想查看某个模块的应用日志,可以采用“package:模块包名”的过滤格式,比如“package:chapter12”表示只查看chapter12模块的应用日志。 除了package标记,还有tag和level两个标记也能过滤日志,其中“tag:标识文字”表示只显示包含指定文字的日志,“level:日志等级”表示只显示指定等级以上的日志。日志等级的过滤情况说明如下:
level:VERBOSE:显示包括VERBOSE在内以上级别的日志,也就是显示所有级别的日志。
level:DEBUG:显示包括DEBUG在内以上级别的日志,也就是显示DEBUG、INFO、WARN、ERROR级别的日志。
level:INFO:显示包括INFO在内以上级别的日志,也就是显示INFO、WARN、ERROR级别的日志。
level:WARN:显示包括WARN在内以上级别的日志,也就是显示WARN、ERROR级别的日志。
level:ERROR:显示包括ERROR在内以上级别的日志,也就是只显示ERROR级别的日志。
package、tag和level三个过滤标记可以分别使用,也可以联合使用。联合使用之时,以空格分隔各标记。比如“package:chapter12 level:WARN”表示只显示chapter12模块中级别在WARN以上的日志内容。 新版Logcat也支持反向选择,也就是在标记前面添加横线“-”,表示把指定条件的日志内容排除在外。比如“-package:chapter12”表示不显示chapter12模块的日志,又如“-tag:Fire”表示不显示包含Fire的日志内容。 新版Logcat还支持正则表达式,也就是在标记后面添加波浪线“~”,表示过滤条件采用了正则表达式。
3、支持多窗口
以前的Logcat只能在一个窗口中显示日志内容,新版的Logcat支持同时打开多个日志窗口。单击Logcat窗口顶部右边的加号按钮,即可开启名叫“Logcat(2)”的新日志窗口。继续单击加号按钮,即可开启名叫“Logcat(3)”的新日志窗口,依此类推。 每个新的日志窗口均可重新定制过滤条件,单击顶部的标签名称,即可自由地在窗口之间切换。如此一来,查看各种维度的日志信息就更加方便快捷了。
相关文章
- Jitpack发布Android库出现Direct local .aar file dependencies are not supported when building an AAR
- 关于Android12安装apk出现-108异常INSTALL_PARSE_FAILED_MANIFEST_MALFORMED的解决方法
- Android 多module情况下module依赖aar问题处理
- Android7.0以上的分享图片文件错误及解决方法
- Android开发 对接微信分享SDK总结
- Android RecyclerView使用ListAdapter高效刷新数据
- Android自动化测试工具调研
- Android 自动取色并设置沉浸式状态栏
- Java 断点下载(下载续传)服务端及客户端(Android)代码
- Android自定义View学习(1)——基础知识介绍
- Android webview只加载10%且出现白屏问题排查解决
- Android Studio安装插件重启插件消失
- Android Swtich开关样式调整
- Android 实现开机自启APP
- 关于TornadoFx和Android的全局配置工具类封装实现及思路解析
- Android shape与selector标签使用
- Android8.0 后台服务保活的一种思路
- 关于Android安装apk出现解析包异常问题情况总结
- Android 接入腾讯IM即时通信(详细图文)
- Android 语音播放(文字TTS)