8

我知道如何过滤掉 LogCat 中的消息,所以这不是我要问的。

问题是某些电话比其他电话“更嘈杂”,并且会淹没 LogCat 缓冲区,从而触发一个错误,使其丢弃较新的消息。

这个问题不会发生在 Nexus One 上,但它确实发生在三星 Continuum i400 上。

有没有办法告诉 Android 或 LogCat完全丢弃(即不过滤)来自某些进程的消息?

4

5 回答 5

4

据我所知,没有办法阻止任何应用程序向 logcat 发布任何内容。你所能做的就是在捕获之前清除日志,然后过滤掉你不想看到的东西。例如:

adb logcat -c 
adb logcat BadProcessName:S MyProcessName:V > log.txt
CTRL-C

我希望这有帮助。

于 2011-09-28T14:05:03.867 回答
2

“清除日志”有时有效。有时它不会。

当“清除日志”没有帮助时,不需要重新启动 Eclipse。您所要做的就是Devices在 DDMS 透视图中显示视图,LogCat 消息将神奇地再次开始出现。

然后您可以关闭Devices视图(如果您不需要它)。

于 2011-12-07T19:32:42.187 回答
1

正如@Emmanuel 所提到的,正如我在评论中所提到的,我不相信有办法阻止其他应用程序发布日志消息。您可以过滤它们,但不能完全阻止它们。

当我遇到这个问题时,我发现的最简单的解决方案是简单地点击 Eclipse 中的“清除日志”按钮。

Eclipse 中的清除日志按钮

那应该清除缓冲区(至少在嘈杂的应用程序再次填满它之前)。您可以随时单击该按钮,因此我发现在执行要调试的操作之前清除日志最有帮助。

我想另一种选择是完全终止该过程。如果嘈杂的应用程序对您尝试调试的应用程序并不重要,您可以结束该过程。

于 2011-10-04T00:31:34.427 回答
1

在这种情况下,最好的办法是使用过滤器功能仅显示来自应用程序的日志。您可以按 PID 或应用程序名称进行过滤。

图片

单击绿色加号按钮为您的应用创建过滤器。

于 2013-06-11T07:52:33.203 回答
0

您可以重新启动设备以阻止进程淹没logcat 这是我每次使用的解决方案

于 2013-08-03T06:39:17.107 回答