如何使用 ddmlib 获取 logcat 数据?

Posted

技术标签:

【中文标题】如何使用 ddmlib 获取 logcat 数据?【英文标题】:How can I get logcat data with ddmlib? 【发布时间】:2013-09-29 15:05:33 【问题描述】:

我正在编写一个实用程序,用于在 PC 上制作 android 设备上运行的应用程序的展示电影。我可以使用 xuggler (http://www.xuggle.com/xuggler) 和 ddmlib 来做到这一点。使用 ddmlib 从 Android 的 adb 中获取 RawImage 格式的图像非常容易,但现在我需要从拍摄电影的那一刻获取 Logcat 数据。我找不到任何示例来获取他的 Logcat 数据; logcat 包有一些类来处理 Logcat 消息,但没有实例化它。任何人,帮助!我很高兴看到任何如何使用 ddmlib 获取 logcat 消息的示例。

【问题讨论】:

【参考方案1】:

我发现可以使用

LogCatReceiverTask lcrt;
LogCatListener lcl;
lcrt=new LogCatReceiverTask(devices[0]);
lcl= new LogCatListener() 
            @Override
            public void log(List<LogCatMessage> msgList) 
                System.out.println("Called with messages list length "+msgList.size());
                for (LogCatMessage msg : msgList) 
                    // System.out.println(msg.toString());
                    /*

                    System.out.println(msg.getTime());
                    System.out.println(msg.getPid());
                    System.out.println(msg.getLogLevel());
                    System.out.println(msg.getAppName());
                    System.out.println(msg.getTag());
                    System.out.println(msg.getTid());
                    System.out.println(msg.getMessage());
                    */
                    logcat = logcat + msg.toString() + "\n";
                
            
        ;

    

【讨论】:

【参考方案2】:

感谢 llya Yevlampiev,这帮助我在 ddmlib 上开发 android logcat api。

Custom Logfilter

【讨论】:

用 llya Yevlampiev 致谢,包括您的来源,让它成为问题的答案。就目前而言,它可能会被删除。

以上是关于如何使用 ddmlib 获取 logcat 数据?的主要内容,如果未能解决你的问题,请参考以下文章

ddmlib问题总结——同步获取设备信息

如何获取 android 的系统日志 logcat

如何从 DDMS 中的 Android 可穿戴设备获取 logcat 消息/堆栈跟踪

Android 巧用 adb logcat 工具查看丢失的 app crash 数据

错误com.android.ddmlib.AdbCommandRejectedException

Logcat 蓝牙数据