在應(yīng)用程序中以編程方式讀取logcat我想閱讀并回應(yīng)我的應(yīng)用程序中的logcat日志。我找到了以下代碼: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) {}此代碼確實返回在應(yīng)用程序啟動之前所做的logcat日志 -但是有可能連續(xù)監(jiān)聽甚至新的logcat日志嗎?
3 回答

慕森王
TA貢獻1777條經(jīng)驗 獲得超3個贊
只需刪除上面代碼中的“-d”標(biāo)志,即可繼續(xù)閱讀日志。
“-d”標(biāo)志指示logcat顯示日志內(nèi)容并退出。如果刪除該標(biāo)志,logcat將不會終止并繼續(xù)發(fā)送添加到其中的任何新行。
請記住,如果設(shè)計不正確,可能會阻止您的應(yīng)用程序。
祝好運。

精慕HU
TA貢獻1845條經(jīng)驗 獲得超8個贊
您可以使用此方法清除您的logcat,我將其用于在將logcat寫入文件后清除,以避免重復(fù)的行:
public void clearLog(){ try { Process process = new ProcessBuilder() .command("logcat", "-c") .redirectErrorStream(true) .start(); } catch (IOException e) { }}
- 3 回答
- 0 關(guān)注
- 559 瀏覽
添加回答
舉報
0/150
提交
取消