2012-02-07 10 views
1

がWarningのフィルタリングされたログcatを読み込むにはどうすればよいですか?私が知っているすべてですフィルタリングされたログcat(Programmatically)を読み取りますか?

....

logcat = Runtime.getRuntime().exec(new String[]{"logcat", "-d"}); 

br = new BufferedReader(new InputStreamReader(logcat.getInputStream()),4*1024); 
String line; 
    final StringBuilder log = new StringBuilder(); 
    String separator = System.getProperty("line.separator"); 
    while ((line = br.readLine()) != null) 
    { 
     log.append(line); 
     log.append(separator); 
} 
+0

ちょうどいいです!!!! –

+0

Heyy ...あなたはこれに対する解決策を見つけましたか? – AbhishekB

答えて

-1
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); 
        } 
        TextView tv = (TextView)findViewById(R.id.textView1); 
        tv.setText(log.toString()); 
       } catch (IOException e) { 
       } 

希望uが-sフラグを使用すると、上のベースlogcat出力をフィルタリングすることができます

+2

上に書かれたコードには違いがありますか?私は読んでいるロットキャットをどのようにフィルタリングするか尋ねましたか? WHEREレベルレベル= Level.WARNING; –

0
if (line.contains("WARN")) { 
// ... 
} 
1

.... uが望む結果を得ますタグとレベルe、w、d、vを入力して、行を修正することができます。

logcat = Runtime.getRuntime().exec(new String[]{"logcat", "-d","-s","*:w"}); 
+0

私が-sを使うと、最初の2行を読み終えた後でバッファリングされたリーダーが終了します。 – Taranfx

関連する問題