【问题标题】:How to get complete system log from android如何从android获取完整的系统日志
【发布时间】:2013-07-18 08:34:10
【问题描述】:

我想获得完整的系统日志。目前,我正在使用下面的代码来获取系统日志

try {
        final Process process = Runtime.getRuntime().exec("logcat -d -v threadtime *:I");
        final BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(
                process.getInputStream()));
        String line;
        while ((line = bufferedReader.readLine()) != null) {
            lineList.add(line);
        }
    } catch (final IOException e) {
        Log.e(e.toString());
    }

我可以使用上面的代码成功获取系统日志。它只提供最后 30 分钟的日志。但是,我想从我的应用程序启动中获得完整的系统日志。是否可以将系统日志写入我们的私有文件?

【问题讨论】:

  • 您必须删除 -d 选项,因为它实际上“将日志转储到屏幕并退出”。如果您希望它继续打印日志,则不能终止 logcat。 developer.android.com/tools/help/logcat.html
  • 是否可以将系统日志连续写入私有文件?
  • 是的,您只需将读取的每一行写入磁盘上的文件即可。
  • 你知道如何停止从 logcat 读取吗?

标签: android logging logcat android-logcat


【解决方案1】:

要连续写入文件,试试这个:

... exec( "logcat -f cachedirectory/logfile.txt -v threadtime" );

请参阅http://developer.android.com/tools/help/logcat.html 中的 -f 选项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多