Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 为什么logcat会消耗消息_Android_Eclipse_Logcat - Fatal编程技术网

Android 为什么logcat会消耗消息

Android 为什么logcat会消耗消息,android,eclipse,logcat,Android,Eclipse,Logcat,当我测试我的android应用程序时,我会记录显示在LogCat上的消息。但是这些信息很快就从窗口的顶部漏掉了,因此无法足够快地阅读它们 如何停止此操作?logcat窗口中有一个滚动锁,可用于暂停打印输出一段时间 要获取完整的logcat消息,可以将它们重定向到文件: adb logcat | tee foo.log | grep "YOUR_TAG_OF_INTEREST" adb logcat>&output.log有一些方法: 禁用自动滚动功能。单击“滚动锁定”按钮以禁用此功能 使用命令

当我测试我的android应用程序时,我会记录显示在LogCat上的消息。但是这些信息很快就从窗口的顶部漏掉了,因此无法足够快地阅读它们


如何停止此操作?

logcat窗口中有一个滚动锁,可用于暂停打印输出一段时间

要获取完整的logcat消息,可以将它们重定向到文件:

adb logcat | tee foo.log | grep "YOUR_TAG_OF_INTEREST"

adb logcat>&output.log

有一些方法:

  • 禁用自动滚动功能。单击“滚动锁定”按钮以禁用此功能
  • 使用命令行工具。运行“adb logcat | less”,您可以浏览结果。您还可以运行“adb logcat>logcat.txt”,然后检查logcat.txt

  • 这在某种程度上取决于你所说的“排水”是什么意思。如果问题仅仅是消息滚动过快,您需要停止自动滚动到底部,您可以在IDE(或DDMS/Monitor)中暂停此功能。暂停方式取决于您的IDE,在IntelliJ中,您只需单击日志输出中的某个位置即可放置光标,而在Eclipse中,logcat窗口上方有一个按钮用于暂停输出滚动(不要忘记重新打开它,否则您将看不到新消息)


    但是,如果您的问题是记录的数据太多,即使滚动暂停,您也无法向上滚动查看所需内容,那么您需要减少日志记录。这是因为Android logcat驱动程序是一个固定大小的64KB循环内存缓冲区。因此,如果您记录了足够的数据,它将开始覆盖日志中较旧的条目,并且在您有机会阅读它们之前,这些条目将消失。

    为什么不过滤日志猫,以便它显示您最感兴趣的内容

    您可以使用以下语法仅显示感兴趣的标记(使用命令行中的adb工具-也可在Eclipse的logcat视图中获得):


    可以包含任意多个标记组合。别忘了*.s,它会让所有其他的声音都消失。

    我更喜欢发球而不是锉刀:

    adb logcat | tee foo.log | grep "YOUR_TAG_OF_INTEREST"
    

    通过这种方式,您可以在终端窗口中找到您认为需要的任何内容,但如果您需要查看完整的日志,您可以将它们保存在一个文件中。

    或者只需在窗口内单击即可否,这与此无关。无论滚动锁定设置如何,消息在记录后很快就会消失,直到LogCat窗口完全为空。他们只是跑出来的顶部。在哪里输入这些命令?您不能在Eclipse GUI中重定向吗?如果它们很快就用完了,那么可能会打印出太多的消息,而日志缓冲区有一定的限制,如@Devunwired所说。因此,捕获所有内容的最佳方法是将消息重定向到文件。你必须在终端外壳中完成。