android 捕捉实时logcat日志 并且显示在textview中

 
  

说明:首先需要的权限  

< uses-permission android:name = "android.permission.READ_LOGS" />


1,posLog,就是TAG,必须要项目中打印时的一样;

2:E 表示日志类型,VERBOSE(v) 、DEBUG(d)、 INFO(i)、 WARN(w)、 ERROR(e); 

3:*:S  表示所有日志;

上述捕捉代码一定要在子线程中进行!!!

到这里已经捕捉到了,剩下的就是刷新ui的工作了,相信大家都会。

另外图片如果看不清的话我在下面附上我的代码:

case LOG:
    Process mLogcatProc = null;
    BufferedReader reader = null;
    try {
        //获取logcat日志信息
        mLogcatProc = Runtime.getRuntime().exec(new String[]{"logcat", "posLog:E *:S","leisenIface:E *:S","leisenIface:D *:S"});
        reader = new BufferedReader(new InputStreamReader(mLogcatProc.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            //logcat打印信息在这里可以监听到
            // 使用looper 把给界面一个显示
            Message msg3 = new Message();
            msg3.what = LOG;
            msg3.obj = line;
            mHandler.sendMessage(msg3);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    break;


你可能感兴趣的:(项目经验)