在Logcat中启用真实设备的日志消息

5

对于我的Android应用程序开发,我正在尝试从我的实际设备(当我从Eclipse启动应用程序时)获取logcat消息,而不仅仅是从模拟器中获取。

是否有人知道如何启用这样的功能?

4个回答

15

您需要在设备上启用USB调试。前往设置,应用程序,开发选项并勾选“USB调试”。然后,当您的设备通过USB连接时,您可以在DDMS中看到其名称,就像它是另一个模拟器一样。


以奇怪的方式,它并没有......USB调试已经被启用。 - poeschlorn
2
啊哈,我找到了 :) 我只需要在DDMS中点击设备以启用它的logcat。谢谢提示 :) 阅读是有用的 ;-) - poeschlorn
我有同样的问题,无法通过logcat从设备获取日志。我在DDMS上点击了设备条目,但对我来说仍然没有任何结果..:( - Krishnabhadra
1
您不需要使用DDMS透视图来切换设备:您可以使用Window/Show View/Other/Android/Devices,在Java透视图中获取设备列表选项卡。 - Jules

4

它的工作方式类似于模拟器,使用ddms或eclipse插件可以从设备上运行的应用程序中获取logcat。

否则,您始终可以使用Log Collector应用程序(从市场下载免费应用程序),如果用户想要向您发送日志,则可以告诉他们使用此类应用程序。


3
使用模拟器时,我会收到LogCat条目,但当我以相同的方式在手机上启动同一应用程序时,我看不到任何内容。 - poeschlorn

3
有时,您需要在真实设备上明确启用调试。
  • 可能是因为设备Android镜像的debuggable属性被关闭(可以通过运行adb shell getprop来检查)。 在这种情况下,您需要在AndroidManifest.xml中声明您的应用程序为可调试(<application .... android:debuggable="true">)。 这实际上在Android Dev Guide 这里 明确说明了(在设置设备进行开发下,还提到打开“USB调试”和几个其他调整)。
  • 有些设备(例如Motorola Cliq)默认禁用所有冗长和调试日志消息。 为使其工作,您必须在设备上运行adb shell setprop log.debug_level 1,然后才能使用调试消息(也就是说,在您重新启动设备之前)。

1
所有在http://developer.android.com/guide/developing/device.html上的内容都已经完成了...这真是非常奇怪... - poeschlorn
你正在使用哪个设备进行工作? 你看到了任何日志吗,还是只有你的应用程序日志丢失了? 你尝试过发出所有日志级别的日志吗? - adamk
1
@adamk 三星Galaxy Ace。无论我尝试什么,logcat都无法连接到我的硬件。 - Pacerier

0

我认为您应该先安装适合您的Android设备的USB驱动程序,然后您的Eclipse将识别您的设备并开始调试。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接