Eclipse - 带有 Android 7 的空 Logcat

Posted

技术标签:

【中文标题】Eclipse - 带有 Android 7 的空 Logcat【英文标题】:Eclipse - Empty Logcat with Android 7 【发布时间】:2017-01-14 00:50:48 【问题描述】:

我最近将我的 Nexus 9 平板电脑更新为 android 7 Nougat。 从那时起,Eclipse 中的 Logcat 视图停止显示 Logcat 消息,该视图保持为空。 设备目标也显示为“未知”。 如果我改为在 Eclipse(AndroidSDK->tools->ddms)之外启动 Logcat,它会显示所有消息。但是,“应用程序”列保持为空。 在 SO 上已经有一些关于这个主题的(较旧的)问题,但这里没有一个解决方案对我有用。 我尝试了什么:

使用另一个 USB 端口 从 DDMS 角度关注设备 重启 Eclipse 重启设备+电脑 abd kill-server 在设备上禁用并重新启用 USB 调试 重置USB-Debuging授权并再次确认RSA指纹 将 USB 模式切换为“MTP”

从 Android SDK 安装的每个包都是最新的,我使用最新的 Eclipse+ADT 插件。 我的 Galaxy S5 Mini (Android 5.1.1) 也一切正常。 我知道,ADT-Plugin 已被弃用,我们应该使用 Android Studio。 但是,我仍然希望尽可能长时间地使用 Eclipse,因此我正在寻找解决此问题的方法。 那么有人知道如何解决这个问题吗?

【问题讨论】:

我的理解是LogCat协议变了。 adb 和 Android Studio 使用这两种协议。但是,由于 ADT 插件不再维护,因此它不适用于新的 LogCat 协议。 所以没有办法解决这个问题? 直到Andmore 或有人创建了新的 ADT 插件 AFAIK 等价物。 在 MarshMallow 的 sdk 2 更新后,它会将每个设备注册为未知,我亲自尝试过,甚至在尝试查看布局图形设计时它会给您更新 ADT 的消息,所以我确实安装了 sdk 2 MM要解决这两个问题,如果我发现与 N logcat 问题相关的内容,我肯定会在此处发布 :) 如果 LogCat 面板在 Eclipse 中为空,则模拟器没有焦点。转到 DDMS 透视图并尝试单击“设备”面板(左上角屏幕)中的“模拟器”条目。 在此处查看修复:***.com/a/42451046/3147100 【参考方案1】:

我尝试了这个自定义构建,它对我有用。现在我可以再次在 Eclipse 中看到我的 logcat。

https://github.com/khaledev/ADT/releases

下载 zip 文件,然后在 Eclipse 菜单帮助 > 安装新软件... > 添加 > 存档... 只需选择下载的 zip 并执行其余的安装过程。

【讨论】:

这应该是官方的回答。它实际上解决了问题。其他答案是不错的“B计划”,但如果你想解决这个问题,请遵循这个答案。我测试并验证了修复。顺便说一句,我确实证实了这对我来说同样适用于 2 款不同手机(三星 S7 和 LG G5)上的 Android Nougat。一定喜欢安卓。我用一个应用程序修复了一个 5 分钟的错误,并花了一天时间尝试先修复它。呃。 这对我来说非常有效,谢谢!很快,虽然我觉得我将不得不跳到 Android Studio :( 非常感谢!这一定是 Win 10 的一个错误:我将我的项目从 Win 7 PC 移到了 Win 10 上(相同版本的 Eclipse,相同的旧 ADT,相同的 S7 和相同的 Android 7.0,相同的电缆,...... - 只有一个不同版本的 Java)和 LogCat 没有显示任何调试消息,而“adb logcat”(以及 Win 7 PC 上的 LogCat)工作正常。使用此自定义 ADT(版本 24.2.0-20160729)LogCat 现在也可以在 Win 10 PC 上正常工作。 :) 谢谢。真的错过了较新设备的logcat。就我而言,添加存档后,我必须执行更新,而不是新安装。但我最终想通了。【参考方案2】:

可以使用“Android Device Monitor”应用程序,

这个应用在 sdk-tools 包中。

从命令行启动,

cd到“sdk-tools文件夹/tools/”目录,

输入以下命令:monitor.

windows 环境,

打开目录“sdk-tools文件夹/tools/”,

然后双击monitor.bat。

详细信息 -> Google User Guide

【讨论】:

这就是我现在所做的。但这意味着我总是必须启动一个外部工具。我也有问题,如果没有显示logcat条目的应用程序部分(它总是空的)【参考方案3】:

我遇到了同样的问题。最终,我发现“面向 Android 开发人员的 Eclipse IDE”已经过时了。更新此功能解决了该问题。程序:

打开帮助 -> 关于 Eclipse -> 安装细节

选择“已安装软件”标签

选择“面向 Android 开发人员的 Eclipse IDE”

点击底部的“更新”。

【讨论】:

感谢您的回答,但 Eclipse 插件最后一次更新是在 2015 年 8 月。所以我确定,我已经拥有它的最新版本。【参考方案4】:

尝试从Android SDK直接启动sdk tool monitor,可以在:

sdk-tools 文件夹/工具/

你会看到monitor.bat,点击它来启动Android Device Monitor oustside Eclipse,不要忘记为你的APP创建一个过滤器,去logcat窗口-> 保存的过滤器-> + -> 填写你的应用程序“按应用程序名称”中的名称

如果没有任何效果,在紧急情况下,您可以尝试通过命令行获取logcat(在 Windows 中使用 cmd),输入:

adb logcat --pid=YOUR_APP_PID_NUMER

这会显示来自您的 APP 的消息。如果您不知道您的 PID,请在您的 APP 代码中添加一行:

System.out.println("foo stuff I can find easily when I read logcat results");

运行您的应用,确保执行上线。

然后在你的命令行输入:

adb -d logcat System.out:I *:S

找到您的线路System.out.println("foo... 并读取 PID 号,然后是时间数据。

然后

adb logcat --pid=pid number you read from your comment line

在命令行中实时从您的应用程序中获取logcat 消息。 如果你现在只想输出消息,只需添加-d修饰符:

adb -d logcat --pid=pid number you read from your comment line

【讨论】:

以上是关于Eclipse - 带有 Android 7 的空 Logcat的主要内容,如果未能解决你的问题,请参考以下文章

在房间数据库 Android 中返回带有嵌套关系的空数据

带有 Spring Boot REST 控制器和 JSON 的空字段

找不到带有 ADT 插件的 Android SDK for Eclipse

带有按钮的 Eclipse android 主菜单启动新活动(IES)

如何使旧的 Eclipse 项目在带有 Gradle 的 Android Studio 上运行? [关闭]

带有 ADT 的 Eclipse 因“import android”而崩溃。编辑器中的声明