我试图找到这个,但找不到和结果。如果这是重复的话,请道歉。
我想将android日志写入文件。但我不希望它们最终被写入文件,而是在执行日志语句时,应将其写入此文件。
答案 0 :(得分:0)
但我不希望它们最终被写入文件,而是在执行日志语句时,应将其写入此文件。
然后编写一个或多个记录到文件的方法,除了记录到LogCat之外。 在Java开发中已经完成了大约15年的日志记录,并且有很多代码可以用来演示它。
答案 1 :(得分:0)
你可以尝试这个代码!
public static void printLog(Context context){
String filename = context.getExternalFilesDir(null).getPath() + File.separator + "my_app.log";
String command = "logcat -d *:V";
Log.d(TAG, "command: " + command);
try{
Process process = Runtime.getRuntime().exec(command);
BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = null;
try{
File file = new File(filename);
file.createNewFile();
FileWriter writer = new FileWriter(file);
while((line = in.readLine()) != null){
writer.write(line + "\n");
}
writer.flush();
writer.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
catch(IOException e)
{
e.printStackTrace();
}
}
参考:How to keep on appending logs while writing into File in SDCard?
答案 2 :(得分:0)
我用这个:
Logger logger=Logger.getLogger("myLoggerName");
logger.setLevel(Level.ALL);
File logFileDirectory=new File(getExternalFilesDir(null),"myLogDirectory");
addFileHandler(logger,logFileDirectory,"myLogFile");