Wie bewahrt man die Logs in eine txt-Datei mit dem android.util.melden

Ich weiß, das Thema wurde schon viel gesprochen hat, aber nicht in dieser Bedeutung.
Ich brauche zum speichern des logs in eine .txt Datei, aber ich kann nicht verwenden Sie die log4j oder jede andere Klasse, sondern android.util.melden
Ich habe diese Lösung, aber es ist nicht die beste.
Für die gleichen Informationen haben als in: Log.i(TAG, "Eine INFO-Nachricht");
Ich habe zu schreiben...

ERROR = logLevel < 3;
WARNING = logLevel < 2;
INFO = logLevel < 1;
if (INFO){ 

    appendLog("LEVEL: I    TIME: "+java.util.GregorianCalendar.DAY_OF_MONTH +
                        "-"+ java.util.GregorianCalendar.MONTH +" "+GregorianCalendar.HOUR_OF_DAY +":"+GregorianCalendar.MINUTE +
                        ":"+GregorianCalendar.SECOND +"."+GregorianCalendar.MILLISECOND + "    PID: "+
                        android.os.Process.myPid()+ "    TID: "+android.os.Process.myTid()+ "    Application: com.example.myapplication"+
                        "    TAG:" +TAG+ "    TEXT: An INFO Message");
}

und dann...

public void appendLog(String text) {        
    File logFile = new File("sdcard/log.txt"); 
    if (!logFile.exists()) { 
        try { 
            logFile.createNewFile(); 
        }catch (IOException e){ 
            e.printStackTrace(); 
      } 
   } 
   try { 
       BufferedWriter buf = new BufferedWriter(new FileWriter(logFile, true));  
       buf.append(text); 
       buf.newLine(); 
       buf.close(); 
   } catch (IOException e) { 
       e.printStackTrace(); 
   } 
}

Wer hat eine elegantere Lösung als diese? Vielen Dank für die Hilfe.

InformationsquelleAutor Alberto | 2012-09-27
Schreibe einen Kommentar