如何重定向logcat输出?

Moi*_*nez 6 android logcat

有没有办法将logcat的输出重定向到InputStream或类似的东西?我正在考虑如何在C中重定向stderr.我想这样做,以便在我的应用程序启动时重定向,并将所有发生的事情转储到文件中.

spa*_*nia 7

如果您可以连接设备进行调试,则可以从命令行执行此操作

$ adb logcat > textfile.txt
Run Code Online (Sandbox Code Playgroud)


Moi*_*nez 3

我发现最简单的方法是使用System.setErr. 我允许您轻松地将错误输出重定向到文件。

例子:

System.setErr(new PrintStream(new File("<file_path>"))
Run Code Online (Sandbox Code Playgroud)

  • 这只会捕获打印到“System.err”的输出(如果您以相同的方式重定向它,则可能会捕获“System.out”)。但是,输出不会在每行中包含 Android 广告前缀(时间戳、PID、TID 等),并且通过“Log”类记录的任何内容也不会重定向到此处。 (2认同)