如何清空Android代码中的logcat缓冲区

时间:2015-04-27 04:28:18

标签: android permissions logcat

当我在Android中显示LogCat时,我想以编程方式清除缓冲区日志 但是当我使用这个陈述时:

Runtime.getRuntime().exec("logcat -c")

它不清除缓冲区 我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

我最近遇到过这个问题。 Runtime.getRuntime()。exec(" logcat -c")正在开发一些设备&很少失败。经过大量研究......我的结论是

  1. 这是Android操作系统相关的过程,显示 少数Android API级别(API 16到API 21)的不同行为
  2. Logcat命令" logcat -c"不适用于API 16到API 21, 如此命令清除整个系统Logs
  3. 不依赖于Logcat进程并将日志写入Logcat,而是在应用程序上下文中创建一个自定义文件(/ data / data // files)并将所有日志写入此文件。

答案 1 :(得分:0)

Runtime.getRuntime().exec("logcat -c")将仅清除非root的日志缓冲区(main,system ..etc)。 请使用Runtime.getRuntime().exec("logcat -b all -c")清除所有缓冲区(如radio,kernel..etc)