AndroidStudio - 新版本 Logcat 使用详解

最近这俩天正好有时间给自己做一下减法,忘记是去年还是今年,在升级 AndroidStudio 后使用 Logcat查看日志的方式也发生了一些变化,虽然一直在使用,但每当看到之前还未关闭 Logcat 命令行工具额昂也,就感觉可能还存在知识遗漏

Logcat 相关

官方

如果您针对 Logcat 命令行工具 一点有不了解,可能需要自行前往 查看 ;简单而言仅需知道 Logcat为日志查看工具,可提供不同级别的日志信息 基本就够用了,如果想多学点可以继续往下看

设备选取

如果设备中关联多台设备,可及时更换设备,以防看错、看漏(比较适合查看多机型适配场景下的日志信息,可结合多Logcat窗口进行多机型日志查看)

日志介绍

关于日志中的大部分含义我们还是都清楚的,但为了行知统一,简单说明一下(可结合预览日志视图一起学习)

左边到右:时间戳 → 进程id → tag标识 → 包名 → 日志级别 → 具体信息

过滤规则

过滤提示 message: message~、-message-message~ 前后符号含义如下

  • -:对当前标签的过滤结果取反
  • ~:对当前标签的过滤使用后续正则表达式
  • -xxx~ 就是对 xxx 标签采用正则表达式的结果取反~~

包名、进程

现在的过滤规则支持以process(进程)、package(包名)条件进行过滤,其中使用场景 package:mine 较多

package:mine场景(当前执行项目)

日志级别

这方面和以前相同,简单说明(我用error多一些,有些朋友喜欢设置对应日志级别的输出颜色,也可以自己去设置一波)

常规 → V:详细(最低优先级)、D:调试、I:信息、W:警告、E:错误

新增 → level:assert:断言

未涉及 → F:严重错误、S:静默(最高优先级,绝不会输出任何内容)

tag标签

其实可以根据整体的tag信息,自行过滤相关tag条件


多窗口

创建多窗口

支持在 Logcat 中创建多个选项卡,以便可以轻松地在不同设备或查询之间切换

右键单击选项卡可以对其进行重命名,并且可以单击并拖动以重新排列选项卡

日志比对

可通过Split RightSplit Down 对比 Logcat 输出日志,每个对比窗口均可自行选取连接设备和过滤条件

  • 顶部功能键
  • 侧边功能键

提示:当同一个Logcat中打开多个对比窗口后,可直接右键 Close ,避免无线套娃


预览日志视图

关于预览日志主要有三种模式 StandardView(默认)Compact View(简洁)Modify View(自定义),具体使用哪种看个人的工作习惯

设置方式

Standard View(默认)

Compact View(简洁)

Modify View(自定义)

这里支持动态显示预览结果,可直接通过选择与否,设置自己喜欢的日志信息


历史过滤规则

可直接在过滤规则旁通过漏斗图标选择之前使用过的过滤规则,经测试后发现不会记录之前使用对应过滤规则的日志信息,仅会重新筛选当前的日志信息

历史条件

常用收藏

支持收藏一一些常用的过滤规则

经收藏后的过滤规则会靠前显示


键值搜索

关于这种搜索方式我并未使用过,但还是有必要记录下来,以防后续用到

在 Logcat 的早期版本中,可以选择

  • 使用字符串搜索(支持正则表达式),选项使搜索更加复杂
  • 使用 Logcat UI 填充各种字段来创建新过滤器,选项使共享和设置查询更加困难

现在,我们通过直接从主查询字段引入键值搜索来简化体验

这个新的查询系统无需依赖正则表达式即可提供准确的查询结果,并且能够从历史记录中调用过去的查询并与其他人共享这些查询。此外,您仍然可以选择使用正则表达式并根据键值排除日志。以下是如何使用新查询系统的一些示例,但您也可以简单地开始在查询字段中输入以查看建议:

  • 本地应用程序项目的 PID:package-mine
  • 具体数值:
    • 包:<我的包 ID>
    • 标签:<我的标签>
    • 级别:[详细| 信息| 断言| 调试| 警告 | 错误]
  • 通过在键前面添加-来排除特定值:
    • -标签:<排除此标签>
  • 通过在键后面 放置~来使用具有给定键的正则表达式:
    • tag~:<正则表达式标签>
    • 与排除标签结合使用:-tag~:

跟踪应用程序崩溃/重新启动的日志

简而言之就是应用崩溃/重启后日志信息可分辨出对应日志状态,同时会保留原始针对Logcat的配置信息,例如过滤条件、视图选项等

新的 Logcat 现在可以更轻松地跟踪应用程序崩溃和重新启动时的日志,这样就不会错过这些事件的重要日志

当 Logcat 注意到应用程序进程已停止并重新启动时,您将在输出中看到一条消息,例如PROCESS ENDEDPROCESS STARTED ,如下所示:

而且,重新启动 Logcat 会保留您的会话配置,例如选项卡拆分、筛选器和视图选项,以便您可以轻松地继续会话

相关推荐
Winston Wood2 小时前
Android Parcelable和Serializable的区别与联系
android·序列化
清风徐来辽2 小时前
Android 项目模型配置管理
android
帅得不敢出门2 小时前
Gradle命令编译Android Studio工程项目并签名
android·ide·android studio·gradlew
problc3 小时前
Flutter中文字体设置指南:打造个性化的应用体验
android·javascript·flutter
帅得不敢出门13 小时前
安卓设备adb执行AT指令控制电话卡
android·adb·sim卡·at指令·电话卡
我又来搬代码了15 小时前
【Android】使用productFlavors构建多个变体
android
德育处主任16 小时前
Mac和安卓手机互传文件(ADB)
android·macos
芦半山16 小时前
Android“引用们”的底层原理
android·java
迃-幵17 小时前
力扣:225 用队列实现栈
android·javascript·leetcode
大风起兮云飞扬丶17 小时前
Android——从相机/相册获取图片
android