android 日志过滤说明

为什么这两种写法完全等价(Android Studio Logcat 核心规则)

复制代码
写法①:package:mine  Bar | Player | ViewModel
写法②:package:mine  message:Bar  message:Player message:ViewModel

一、最核心的原因【重中之重,必记】

Android Studio 新版Logcat(你现在用的版本)有一个 「隐式简写规则」

不写任何过滤关键字(如tag:/message:)的纯文本,默认等价于 message:纯文本

翻译你的写法①

复制代码
package:mine  A| B| C

等价于:

复制代码
package:mine  message:A| message:B| message:C

你的写法②本质

复制代码
package:mine  message:A message:B message:C

AS的Logcat中,多个同类型的 message:xxx 用空格分隔,默认就是「或」逻辑 ,等价于 message:A | message:B | message:C

✅ 最终等式

复制代码
package:mine + (message:A | message:B | message:C) 
= 
package:mine + message:A  message:B  message:C

这就是你这两行过滤规则 显示的日志结果完全一模一样 的根本原因!



四、✅ 给你的「最优推荐写法」(3个版本,按优先级排序,直接复制用)

结合你的业务代码(播放器状态监听、恢复播放、保存进度),以及你的3个类名,全部是精准无误差的写法 ,优先级从高到低,第一个是开发调试首选

✔️ 版本1:最优写法【精准匹配TAG,零误报、效率最高,首推!】

复制代码
package:mine tag:A|B|C

✅ 理由:你的3个类的日志TAG都是类名本身,这个写法完美匹配你的代码规范,筛选的日志100%是这3个类打印的,没有任何无关日志!

✔️ 版本2:带日志级别过滤(开发调试常用,过滤无用日志)

只看 Debug+Info 级别的核心日志(你代码里的BaseLog.d/i/w/e),屏蔽最低级的Verbose日志,面板更干净:

复制代码
package:mine tag:A|B|C level:debug|info

✔️ 版本3:排查播放异常专用(只看错误+警告日志)

如果播放器出现崩溃、播放失败、恢复失败等问题,用这个写法,直接筛选出所有报错日志,不用翻找:

复制代码
package:mine tag:A|B|C level:error|warn

二、Logcat 过滤的「3个万能核心语法」

✔️ 语法1:空格 = 逻辑「且」(AND)→ 必须同时满足

比如:package:mine tag:XXX → 是「当前APP」并且「TAG是XXX」的日志,缺一不可。

✔️ 语法2:竖线 | = 逻辑「或」(OR)→ 满足任意一个即可

比如:tag:A|B|C → TAG是A、B、C中任意一个都可以被筛选出来。

✔️ 语法3:减号 - = 逻辑「非」(NOT)→ 排除符合条件的日志

比如:package:mine tag:XXX -level:verbose → 显示当前APP+TAG=XXX的日志,排除Verbose级别日志。


相关推荐
用户693717500138411 小时前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
GitLqr11 小时前
别在 Flutter 的 main() 里乱锁屏幕方向,小心 iPad 分屏功能被你搞没了
android·flutter·ios
sg_knight12 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
爱笑鱼12 小时前
Binder(四):ioctl(BINDER_WRITE_READ) 之后,事务怎样到达目标进程?
android
AFinalStone12 小时前
Android 7系统休眠唤醒(二)开机全链路—BootROM到Launcher
android·电源管理·休眠唤醒
Mr YiRan12 小时前
Android NDK开发之统计到未被回收的图片
android
浮江雾13 小时前
Flutter第十七节-----路由管理(3)
android·开发语言·前端·javascript·flutter·入门
admin and root13 小时前
「移动安全」安卓APP 反编译&frida脱壳技巧分享
android·开发语言·python·web安全·微信小程序·移动安全·攻防演练
ihuyigui14 小时前
海外签收通知短信接口
android·java·开发语言·前端·数据库·后端
大尚来也14 小时前
老项目 PHP 5.6 升级 PHP 8 完整迁移步骤与兼容坑汇总
android·adb