【发布时间】:2011-06-19 11:41:12
【问题描述】:
当我的应用程序启动时,我已将 logcat 重定向到我的代码中的文件。 但是当我的应用程序重新启动时,重定向代码再次运行,结果是日志中的每一行都写入了两次。
如何执行命令并确保父进程死亡时子进程也死亡?
String.format("logcat -f %s -r %d", filename.getAbsolutePath(), LOG_FILE_SIZE_KB);
Runtime.getRuntime().exec(cmd);
如何确保我的应用程序的 logcat 只被重定向一次? (如果其他应用调用 logcat 并将其重定向到自己的文件会发生什么情况,那么检查是否仍然有效?)
谢谢!
【问题讨论】:
-
为什么需要将其重定向到文件?请显示一些代码。
-
我需要将文件发送到服务器。我添加了执行重定向的代码。你怎么看?
-
LogCat 旨在调试您的开发环境。如果应用程序在用户设备上崩溃并且在市场上,用户可以向您发送 Stack-Trace。无论如何,你能展示你使用这段代码的整个方法吗? (我猜是
onCreate)。 -
这是整个方法,我仅将其用于调试目的。问题是第二行 (Runtime.getRuntime().exec(cmd);) 被调用了两次,我想知道如何检查它是否已在此设备上调用
-
看看这个,这可能会有所帮助:stackoverflow.com/a/43364736/2046324
标签: java android logcat runtime.exec android-logcat