【转】如何读取程序的Log信息

原文

http://www.androidres.com/index.php/2009/05/07/android-log-tutorials/

 

如果需要程序实现这个功能,需要在Manifest中添加Permission:

android.permission.READ_LOGS

应用Runtime.getRuntime().exec(  parameters )启动Logcat,并返回一个Process对象,然后通过BufferedReader捕捉进程的数据流。

源代码:

01.Process mLogcatProc = null;
02.BufferedReader reader = null;
03.try
04.{
05.mLogcatProc = Runtime.getRuntime().exec(new String[]
06.{"logcat""-d""AndroidRuntime:E [Your Log Tag Here]:V *:S" }); 
07. 
08.reader = new BufferedReader(new InputStreamReader
09.(mLogcatProc.getInputStream())); 
10. 
11.String line;
12.final StringBuilder log = new StringBuilder();
13.String separator = System.getProperty("line.separator");  
14. 
15.while ((line = reader.readLine()) != null)
16.{
17.log.append(line);
18.log.append(separator);
19.
20. 
21.// do whatever you want with the log.  I'd recommend using Intents to create an email
22.
23. 
24.catch (IOException e)
25.{
26....
27.
28. 
29.finally
30.{
31.if (reader != null)
32.try
33.{
34.reader.close();
35.}
36.catch (IOException e)
37.{
38....
39.
40. 
41.

} 

posted @ 2009-11-20 11:19  jacktu  阅读(706)  评论(0编辑  收藏  举报