2013-10-04 119 views
2

在Eclipse中,我注意到Logcat只保留了几十个条目,并在新条目刚刚进入时删除旧条目。是否有办法防止这种情况发生?我需要我的应用程序运行很长时间,并且不会丢失任何条目,因为我的应用程序最终会在几天后挂起或崩溃,并且我想查看Logcat中是否记录了某些内容。保留Logcat删除条目

回答

3

我不知道这是否是最优雅的解决问题的办法,但你总是可以提高在Eclipse的logcat的邮件大小。

窗口 - >首选项 - > Android的 - > logcat的 - >最大logcat的消息数量来缓冲

默认值是5000,我相信。如果您计划长时间运行应用程序,则可以将其设置得非常高。

0

我认为你需要增加这个节目图像enter image description here

0

这里有一个更好的解决方案:

设置默认未捕获异常处理程序。每当应用程序崩溃,这将被称为例外。简单地写一个日志条目说它崩溃然后将logcat转储到一个文件。最后,确保你重新抛出异常,以确保应用程序崩溃和时髦的事情不会发生。注意:这是每个线程,请牢记这一点。

Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() { 
    @Override 
    public void uncaughtException(Thread thread, Throwable ex) { 
     Log.e("TAG", "---My app crashed just now---", ex); 

     //TODO: Dump logcat to file 

     throw new RuntimeException(ex); 
    } 
}); 
0

如果你想保持你的应用程序运行好几天..它更好地捕获你的日志从adb外壳。 常见的外壳命令应该是:

logcat -c \\ to clear previous logs 
logcat -v time>yourLogs.txt & \\ to capture fresh logs