下面的代码是否正确地将日志猫详细信息保存到 eclipse 中的文件中


public static void saveLogcatToFile(Context context)
{    
    String fileName = "logcat_"+System.currentTimeMillis()+".txt";
    File outputFile = new File(context.getExternalCacheDir(),fileName);
    @SuppressWarnings("unused")
    Process process = Runtime.getRuntime().exec("logcat -f "+outputFile.getAbsolutePath());  
}

请检查上面的代码并帮助我将logcat详细信息保存到文件中(永久),它应该在每次在eclpise中调试后附加

试试这个

public static void saveLogcatToFile(Context context)
    {
    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);
                }
                String logFilePath = Environment.getExternalStorageDirectory() + File.separator + "LogTest.txt";
                File logFile = new File(logFilePath);
                if (!logFile.exists())
                    logFile.createNewFile();
                FileOutputStream outStream = new FileOutputStream(logFile, true);
                byte[] buffer = log.toString().getBytes();
                outStream.write(buffer);
                outStream.close();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
    }

并且不要忘记提及清单文件中的权限

<uses-permission android:name="android.permission.READ_LOGS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

最后还要检查此SO链接,用于在外部存储上写入文件。

相关内容

最新更新