升级Nexus手机的Android系统到4.2.2版本后,Eclipse显示设备目标未知?

21
我刚把手机升级到4.2.2,但现在无法在Eclipse中使用它了。

enter image description here

我尝试重新启动设备,重置我的调试设置,但我无法再让它工作了。 我看到它已经是一个注册的issue。有一些新的安全增强功能,所以应该会出现一个对话框(参见here底部),但这个对话框没有出现。我在手机上没有多个账户,这在问题中指出。 有人有什么建议吗? 编辑:请查看下面接受的答案,这应该涵盖所有情况。在我的情况下,有一些缺失的包,这些包没有显示在Android SDK Manager中。我刚刚在Android SDK Manager中找到了 Packages -> Reload…而我以为这会自动发生。

我知道这个问题。在我的情况下,是USB线断了。你在所有者配置文件中允许调试了吗? - rekire
2
请确保您已经从SDK管理器中安装了最新的SDK平台工具。 - CommonsWare
9个回答

43
您需要三件事情来确保此更新顺利进行:
  1. 确保您的设备实际上运行4.2.2版本,问题不是其他原因引起的
  2. 更新到最新的工具版本。除了最新版本之外,所有版本的adb二进制文件都不支持4.2.2安全增强功能。
  3. 在多个用户账户的情况下,请使用您设备的主要账户。

将您的设备连接到计算机并执行adb devices(确保已启用USB调试)。您应该会看到如下内容:

3tiu52839ry082j3 offline

现在应该会在您的设备上出现一个对话框,看起来大致如下:

enter image description here

如果您希望始终允许此计算机,请勾选 始终允许来自此计算机 复选框,然后单击 确定

就这样了。

其他需要检查的一些事项:

  • 确保您的 USB 电缆没有损坏。有时,较小的电缆会在主电缆内部断裂,您的设备可能会充电但没有数据连接。尝试使用不同的电缆,或通过 USB 访问设备上的文件(如果您的电缆没有问题,则可以正常进行)
  • 确保您正在使用最新版本的 adb。即使在更新了 SDK 工具之后,我在使用 adb 时仍无法获得设备授权。最终,我发现 Nvidia 的 NDK 和 SDK 工具安装已更新我的 PATH 变量以使用该安装中的 adb,而不是最新的更新。通过使用我新更新的安装中的 adb,我能够使其全部正常工作。

很棒的答案。你是怎么知道它是Nexus的呢 :-) - user1521536
在我的情况下,一些针对 API 17 的包是缺失的,因为它们只有在手动重新加载 SDK 管理器中的包之后才会显示出来!我原本期望包会每次重新加载,但是,唉... - longi
@LaiVung 他在帖子中提到了这一点。此外,目前只有Nexus(Nexii?)拥有4.2.2 :-) - Raghav Sood
@longilong 是的,这有点违反直觉。很高兴你解决了它! - Raghav Sood
@RaghavSood,您所说的“较小的电缆在主电缆内断裂”是什么意思? - Pacerier

10
对我来说,问题是通过将Nexus 7平板电脑更改为“相机(PTP)”模式解决的。查看这篇博客文章了解如何操作。连接Nexus 7并在Nexus 7上确认摘要后,也可以通过TCP/IP与ADB进行连接。

3
奇怪的是,在取消选中并重新选中“允许USB调试”选项后,弹出了窗口,并选择“确定”解决了我的问题。

2
如果以上解决方案都不起作用,那么请重置ADB。 进入设备---点击最右边的向下箭头----从列表中选择重置ADB。

我尝试了所有其他建议,最终这个对我起作用了!谢谢! - thinzar00

1
我已经尝试了这里和谷歌中能找到的所有日志/博客中提出的建议,但仍然无法使用。USB电缆被认为是良好的。ADB版本为1.0.31(如所示),Nexus 7平板电脑启用了USB调试,SDK已更新到最新的工具,可用于4.2.2 / API 17,即2013年3月1日。我尝试了USB的Media和Camera模式,反复重启Windows和设备,重新安装了最新的Google USB驱动程序等等,但ADB Devices仍然没有显示任何内容。
我尝试了硬重置Nexus 7平板电脑,以为可能会出现允许USB调试的屏幕,但结果点击了取消。但那也没用。
最终有效的方法是:
1. 进入Windows控制面板|设备管理器, 2. 在“便携式设备”下选择NEXUS, 3. 然后在驱动程序选项卡中单击更新,并手动选择Google USB驱动程序(检查功能显示已更新)。之前,显示的日期是2006年,之后是2012年的日期(但稍后会详细说明)。
但那并没有解决问题。

所以我将USB从媒体设备切换到相机设备 - 然后它想安装驱动程序,所以我让它这样做。之后,我注意到Nexus的驱动程序回到了2006年的版本,但是ADB DEVICES终于显示为离线状态!哈利路亚,而且Nexus正在显示对话框以允许USB调试,现在一切都正常了。

我不确定哪个步骤实际上解决了问题。我认为重置平板电脑并不是必要的,但是处理设备驱动程序也不是一个非常令人信服的解决方案 - 我不认为驱动程序已经损坏 - 但是可能必须更改驱动程序以使连接为相机设备的平板电脑与正确的驱动程序相关联。无论如何,将平板电脑连接为相机设备对于ADB的工作是必要的...


1
重新启动设备或启用USB调试并没有解决我的问题。 然而,我将USB PC连接模式更改为“相机(PTP)”模式后,adb devices显示了手机的设备ID。

0

我尝试使用这个自定义版本,它对我有效。现在我可以再次在Eclipse中看到我的logcat。

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

下载zip文件,然后在Eclipse菜单中选择 帮助 > 安装新软件... > 添加 > 存档... 只需选择已下载的zip文件并完成安装过程即可。


0

打开设备管理器,卸载您的设备并从USB上拔掉。 确保您已经打开了CMD,并且至少进入了ADB Help。 将设备连接到USB上,并按照Raghav Sood提供的步骤继续进行-他在我之前回答了几个问题。

对我来说很有效。


0

在阅读了很多关于这个特定问题的帖子后,我通过重置文件上的用户权限(这些文件由root拥有)来解决了它:${HOME}/.android/adbkey和${HOME}/.android/adbkey.pub


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