logcat -d给出了不完整的日志

时间:2014-03-11 13:51:48

标签: android logcat android-logcat

我正在使用logcat -d以编程方式将日志刷新到文件。下面是我在onCreate()中编写的代码片段:

Log.d(TAG, "First");
Log.d(TAG, "Second");
Log.d(TAG, "Third");
try {
    Process process = Runtime.getRuntime().exec("logcat -d");
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));

    StringBuilder log = new StringBuilder();
    String line;
    while ((line = bufferedReader.readLine()) != null) {
            log.append(line);
    }
    PrintWriter printWriter = new PrintWriter(new FileWriter(FILE_PATH));
    printWriter.println(log.toString());
    printWriter.close();

    TextView tv = (TextView)findViewById(R.id.textView);
    tv.setText(log.toString());
} catch (IOException e) {
}

日志未完全刷新。有时,它会转储FirstSecondThird,而在其他时候,它只会显示三个中的少数几个。最糟糕的情况是,有时它不会抛弃任何东西 要检查是否存在任何File写入问题,我还使用了TextView。即使是textView也遵循相同的行为。

为什么logcat -d出现意外行为?

1 个答案:

答案 0 :(得分:0)

重新启动您的adb并尝试直接查看ddms logcat。