如何访问Android TV设备上的应用程序日志?

时间:2014-02-02 07:52:02

标签: android usb adb logcat android-logcat

我希望能够访问Android TV设备上运行的应用程序的logcat,但电视只有USB插头而不是micro-USB。

Android TV设备

  • 运行自定义Android 4.2.1 ROM(来自制造商)
  • 不提供对设备设置的访问
  • 只有USB插头
  • 环境#getStorageState()始终为MEDIA_REMOVED

如何访问应用程序日志?

2 个答案:

答案 0 :(得分:2)

你指的是

  

访问应用程序的logcat

如果您正在开发“app”,那么虽然Android现在限制已安装的应用程序看到全局logcat输出,但它仍然允许您访问您自己的进程发送给logcat的数据(无论是来自您自己的代码,或者来自您的流程中运行的框架代码)。这是一个简单的问题,让您的应用程序在设备上运行logcat命令以将数据发送到文件,然后将该文件上传到某个地方的Web服务器,以便您可以阅读它。

Read logcat programmatically within application给出了一般原则,即执行logcat程序,然后读取其输出。)

但是,如果您尝试从设备上的所有应用程序获取logcat输出,那么以某种形式获取adb是您唯一可行的选择。

我假设你可以在设备上安装应用程序,方法是将它们放在外部网站上,然后使用设备的webbrowser下载,然后打开下载的文件。

因此,您可以安装从4.2手机中提取的设置应用程序,这可能允许您打开adb调试(虽然您指出,物理布线是不寻常的)。

答案 1 :(得分:1)

对于那些面临类似问题的人,我选择的解决方案如下:

  1. 创建了Android日志的替代品,用于装饰Android日志,但也记录到log4j RollingFileAppender。这是必要的,因为某些设备上的循环logcat缓冲区非常小,只包含5分钟的日志。
  2. 添加了一个菜单操作,将所有log4j日志文件发布到Web 服务器
  3. 在我的Web服务器上添加了一个Servlet来捕获客户端日志文件和 把它们写在有意义的地方。
  4. 这似乎运作得相当好。

    除第1项外,它与zmarties建议完全相同。

相关问题