为了账号安全,请及时绑定邮箱和手机立即绑定

在应用程序中以编程方式读取logcat

在应用程序中以编程方式读取logcat

肥皂起泡泡 2019-07-26 15:41:58
在应用程序中以编程方式读取logcat我想阅读并回应我的应用程序中的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) {}此代码确实返回在应用程序启动之前所做的logcat日志 -但是有可能连续监听甚至新的logcat日志吗?
查看完整描述

3 回答

?
慕森王

TA贡献1777条经验 获得超3个赞

只需删除上面代码中的“-d”标志,即可继续阅读日志。

“-d”标志指示logcat显示日志内容并退出。如果删除该标志,logcat将不会终止并继续发送添加到其中的任何新行。

请记住,如果设计不正确,可能会阻止您的应用程序。

祝好运。


查看完整回答
反对 回复 2019-07-26
?
精慕HU

TA贡献1845条经验 获得超8个赞

您可以使用此方法清除您的logcat,我将其用于在将logcat写入文件后清除,以避免重复的行:

public void clearLog(){
     try {
         Process process = new ProcessBuilder()
         .command("logcat", "-c")
         .redirectErrorStream(true)
         .start();
    } catch (IOException e) {
    }}


查看完整回答
反对 回复 2019-07-26
  • 3 回答
  • 0 关注
  • 536 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信