android - 有什么方法可以在不打开输出流的情况下获取当前 logcat 输出的快照?

标签 android logcat

我正在尝试通过命令行从 logcat 中获取一些过滤后的输出,但我不想为了自动化目的而打开 logcat 流。

这是我的用例:我想清除 logcat,在启用 AccessibilityChecks 的情况下执行一些仪器测试,然后检查 logcat 是否存在该类在我的 UI 中发现的辅助功能错误。

目前,我可以通过命令行执行以下操作:

//clear logcat history:
adb logcat -c 
// Run instrumentation tests at this time. 
// Run following command when tests done: 
adb logcat AccessibilityValidator:E *:S
// ctrl-c to close stream

这是它应该做的。我只会看到打印出的辅助功能错误。问题是我不想打开 logcat 流。我希望在我的仪器测试完成时按原样获得结果。打开一个流不是很理想,因为我需要将 ctrl-C 通过管道输入到我的管道以关闭流。我真的很想获得纯文本输出的快照。这样的事情可能吗?

谢谢!

编辑:我能够找到我认为可行的解决方案 - 我只需要添加 -d 标志。这不会打开流,而是打印 logcat 文件的内容。结合我的过滤,我能够得到我正在寻找的东西。

最佳答案

我能够找到我认为可行的解决方案 - 我只需要添加 -d 标志。 -d 将转储日志并退出。这不会打开流并将 logcat 文件的内容打印到标准输出。结合我的过滤,我能够得到我正在寻找的东西。

我需要的命令是:

 adb logcat -d AccessibilityValidator:E *:S

关于android - 有什么方法可以在不打开输出流的情况下获取当前 logcat 输出的快照?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38189929/

相关文章:

android - 适用于 Android 的 ffmpeg : neon build has text relocations

android - Logcat 日志警告/错误

android - SharedPreference 给我未知的日志

android - 在同时运行多个动画时减少延迟的任何技巧?

java - 有时 Android BroadcastReceiver 不起作用

android - 如何从 DDMS 中的 Android 可穿戴设备获取 logcat 消息/堆栈跟踪

android - 有没有办法向 android.util.log 添加监听器?

javascript - React-Native BackHandler 总是在 Android 中关闭 App(硬件回退)

android - XML 启动画面 -> 显示 Webview