Android logcat“应用程序”列始终为空。我有最新版本的 android 工具。
7 回答
我在这里尝试了所有其他建议,但都没有奏效。对我来说,应用程序在模拟器上运行时会显示,但在我的 Galaxy Nexus 上不会显示。
事实证明我需要添加android:debuggable="true"
到<application>
我的AndroiManifest.xml
. 请参阅http://developer.android.com/guide/topics/manifest/application-element.html。使用 Eclipse 的人看不到这个问题,因为显然 Eclipse 会根据http://developer.android.com/tools/device.html自动启用调试。
显然,应用程序需要标记为可调试才能在生产 ROM 上调试它们,但无论如何它们都可以在调试 ROM 上进行调试,这就是为什么它可以在模拟器上运行但不能在物理设备上运行的原因。另一种选择可能是构建调试 ROM 并将其安装在您的设备上。
你会认为 logcat 应该能够根据 PID 找出应用程序,而不是需要为调试而构建应用程序。
另一个想法:
adb kill-server
adb start-server
为我工作。
在运行您的应用程序之前,您应该通过 Tools -> Android 启用 ADB 集成。然后日志猫将正常工作。
Tools->Android->Enable ADB Integration active
我今天遇到了这个问题。对我有用的是连接到模拟器(如果你有一个具有虚拟化功能的英特尔 CPU,运行具有虚拟化功能的英特尔模拟器映像——它会快得多),在模拟器上启动应用程序并查看应用程序字段是否返回通过使用您的应用程序登录来登录。
对我来说,当连接到模拟器后,在尝试了一些写入日志的日志操作后开始显示应用程序列。之后,我连接回我的实际设备(Nexus 7),再次从 Eclipse 启动应用程序,并将 DDMS 设置回在 Nexus 7 上运行的应用程序,应用程序列又神奇地出现了。
在此之前,我尝试了各种设备(Nexus 4)并重新启动 Eclipse/adb,但在连接到模拟器之前没有任何效果。
我试图修复这个奇怪的错误,但没有任何效果。有时应用程序名称在 logcat 中为空白,有时它在那里。我什至无法重现它。这不是答案,而是我的快速修复。
浏览整个 logcat 并以某种方式识别您的应用程序的 PID,然后像这样在 logcat 搜索中过滤它
pid: 10036
或您的应用程序 PID 是什么。
在我的特殊情况下(我正在使用 Netbeans 和独立的 Android 调试监视器)“应用程序”列在我之后返回:
- 从设备“强制停止”应用程序
- 从 Netbeans >“运行项目”再次运行它
在通过“帮助=>检查更新”将我的 eclipse ADT 包升级到最新版本的 ADT 插件后,我遇到了这个问题。现在有几个小时我永远不会回来......
不幸的是,我尝试过的任何方法都无法在应用程序列中恢复应用程序名称。事实上,我什至一度遇到了 ADB 设备离线问题。出现问题的第一个迹象是我的 android 设备会显示在 DDMS 透视图中,但没有列出包名称。
我最终重新安装了我的 ADT 包(到一个新文件夹中),拔下我的设备,重新启动,然后重新启动一切并使用新的 ADT 包。