我想创建一个logcat数据的arraylist,如下所示:时间级别标签文本..... 示例:
06-13 13:34:43:434 W myApp blehblehbleh
如何过滤logcat以获得此结果?更确切地说,进入.exec(“”)部分以获取这些值是因为“logcat -d”似乎可以获得所有内容。
log = new ArrayList<String>();
try {
process = Runtime.getRuntime().exec("logcat -d");
} catch (IOException e1) {
e1.printStackTrace();
}
bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
try {
while ((line = bufferedReader.readLine()) != null){
log.add(line);
}
答案 0 :(得分:2)
这将打印YOUR_TAG_HERE中的所有日志,并将过滤掉其余日志:
logcat -d YOUR_TAG_HERE:V *:S
答案 1 :(得分:0)
你可以简单地做一个
if (line.contains("myApp")) log.add(line);
在您的循环中仅添加应用中的行。在您当前的设置中,这似乎是最快捷的方式。