先看下如下代码:主要就是try里边的2行代码。读取系统日志:
final Button button = (Button) findViewById(R.id.button1);
try {
final String[] loggingCommand = { "/system/bin/logcat", "-v", "threadtime" };
logProcess = Runtime.getRuntime().exec(loggingCommand);
} catch (Exception e1) {
e1.printStackTrace();
}
final BufferedReader reader = new BufferedReader(new InputStreamReader(logProcess.getInputStream()), 8 * 1024);
handler.post(new Runnable() {
@Override
public void run() {
{
try {
final String buf = reader.readLine();
if (buf != null) {
sBuffer.append(buf + "\n");
button.setText(sBuffer.toString());
}
handler.postDelayed(this, 1000);
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
看到别人的代码里日志服务里就写的那个来读取日志了,就复制了到demo里测试,发现可用
结果如下,起始都是begining of main 后边还有begining of system,可能还有别的,不知道。。。
![](https://img.haomeiwen.com/i4625080/beae06369fc52786.png)
还有这
![](https://img.haomeiwen.com/i4625080/510655f2191e1aee.png)
测试几次发现这个玩意,比如你10点执行这个命令,完事发现第一条日志的时间是9点半的。退出再进还可能是9点半的。过一会可能进去第一条就是9点40的了。
感觉就像我们eclipse或者studio的日志一样,后边的会把前边的挤掉。
搜索了下这个命令看到下面的文章,可以参考
http://blog.csdn.net/kc58236582/article/details/51075591
网友评论