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 会保留您的会话配置,例如选项卡拆分、筛选器和视图选项,以便您可以轻松地继续会话

相关推荐
Yang-Never2 小时前
Kotlin协程 -> Job.join() 完整流程图与核心源码分析
android·开发语言·kotlin·android studio
一笑的小酒馆8 小时前
Android性能优化之截屏时黑屏卡顿问题
android
懒人村杂货铺10 小时前
Android BLE 扫描完整实战
android
TeleostNaCl13 小时前
如何安装 Google 通用的驱动以便使用 ADB 和 Fastboot 调试(Bootloader)设备
android·经验分享·adb·android studio·android-studio·android runtime
fatiaozhang952713 小时前
中国移动浪潮云电脑CD1000-系统全分区备份包-可瑞芯微工具刷机-可救砖
android·网络·电脑·电视盒子·刷机固件·机顶盒刷机
2501_9159184114 小时前
iOS 开发全流程实战 基于 uni-app 的 iOS 应用开发、打包、测试与上架流程详解
android·ios·小程序·https·uni-app·iphone·webview
lichong95114 小时前
【混合开发】vue+Android、iPhone、鸿蒙、win、macOS、Linux之dist打包发布在Android工程asserts里
android·vue.js·iphone
Android出海14 小时前
Android 15重磅升级:16KB内存页机制详解与适配指南
android·人工智能·新媒体运营·产品运营·内容运营
一只修仙的猿15 小时前
毕业三年后,我离职了
android·面试
编程乐学15 小时前
安卓非原创--基于Android Studio 实现的新闻App
android·ide·android studio·移动端开发·安卓大作业·新闻app