如何从Application的logcat中只获取log.i值?

时间:2012-07-03 12:13:32

标签: android logcat

我想在sdcard中保存我的应用程序的logcat值,特别是LOG.I。 我使用以下代码来获取所有日志值但无法过滤它以仅获取特定的log.i值。请建议怎么做?

 try {
       File filename = new File(Environment.getExternalStorageDirectory()+"/gphoto4.html"); 
            filename.createNewFile(); 
            String cmd = "logcat -d -f "+filename.getAbsolutePath();
            Runtime.getRuntime().exec(cmd);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

2 个答案:

答案 0 :(得分:2)

<强>更新

只需更改您的代码,

String cmd = "logcat -d -f "+filename.getAbsolutePath();

String cmd = "logcat -v time -r 100 -f <filename> [TAG]:I [MyApp]:D *:S";
Runtime.getRuntime().exec(cmd);

您不必自己创建文件只需执行上述命令,即可获取应用程序的特定标记信息。

这里

-v -> Sets the output format for log messages.
-r -> for specifying the size of file.
-f -> file to which you want to write the logs.
[TAG] -> Tag of your application's log.
[MyApp] -> Your application name.

答案 1 :(得分:0)

可能不是一个直接的答案,但我认为这对你有用Application Crash Report for Android

我在我的一些项目中使用了它,就像奇迹一样。