78

我的 Android 设备不再被 eclipse 或 adb 识别。我的操作系统是 Windows 7 64 位,我使用的是带有 Stock Android 4.4.2 的 Nexus 4。

以下是有关该问题的一些详细信息:

  1. 昨天我可以在我的设备上从 eclipse 运行 Android 项目,没有任何问题。我在 Eclipse 上做的唯一可能导致此问题的事情是,使用 developer.android 上的本指南将 v7 appcompat 支持库从资源安装到 Eclipse(https://developer.android.com/tools/support-库/setup.html)。
  2. 该设备在不处于调试模式时仍被识别为 Windows 中的普通多媒体驱动器。
  3. adb devices当我尝试在 Eclipse 中运行 Android 项目或尝试查看它是否被控制台中的 adb 识别时,设备处于开发人员模式和调试模式。
  4. Google USB 驱动程序已通过 ADK 管理器安装
  5. 已根据 android-developers 网站上的教程安装了适用于 Windows 的 USB OEM 驱动程序(参见:https ://developer.android.com/tools/extras/oem-usb.html )
  6. 我尝试使用命令adb kill-server和重新启动 adb adb start-server,并再次检查设备是否被使用adb devices. 该设备仍未在控制台上列出。
  7. 重新启动 windows & eclipse 并没有解决这个问题。

有谁知道这个问题的解决方案?提前致谢!

更新:感谢回复,问题已解决(暂时)。我按此顺序尝试了以下建议:

  1. 我重新启动了我的设备 - 这并没有解决问题
  2. 我将设备设置为 PTP 模式 -这解决了问题。

因此,我再次将设备重置为 MTP 模式和调试模式,以检查它是否仍会因某种原因被 adb 识别。当它处于 MTP 模式时,它肯定不会被 adb 识别。我不知道几天前它是如何被识别的,因为我从未将我的设备设置为 PTP 模式。无论如何,我的问题的解决方案是我的 Nexus 4 必须处于 PTP 模式,当然还要处于调试模式才能被 adb 识别。

我没有尝试任何其他建议,因为我当前的驱动程序解决了我的问题。

4

16 回答 16

28

一般来说,我认为您的 USB 连接应该设置为使用 MTP(媒体传输),但是,我无法让我的计算机识别我的设备(Nexus 4)。奇怪的是,将 USB 连接设置为相机让它对我有用。

于 2015-02-17T16:50:42.150 回答
14

我也遇到了同样的问题,并尝试了几乎所有可能的方法,从手动安装驱动程序到编辑 winusb.inf 文件。但没有什么对我有用。

实际上,解决方案非常简单。它总是在那里,但我们往往会错过它。

先决条件

从这里下载最新的 Android SDK 和最新的驱动程序。启用 USB 调试并打开设备管理器并保持打开状态。

脚步

1) 连接您的设备并查看是否在“Android 设备”部分下检测到它。如果是,则可以,否则,请检查“其他设备”部分并手动安装驱动程序。

2)一定要勾选“Android Composite ADB Interface”。这是 ADB 工作所需的 Android 接口。

3) 转到“[SDK]/platform-tools”,按住 Shift 并单击此处并打开命令提示符并键入“adb devices”,然后查看您的设备是否以唯一 ID 列出。

4) 如果是,则此时已成功检测到 ADB。接下来,写入“adb reboot bootloader”以打开引导加载程序。此时检查“Android设备”下的设备管理器,你会发现“Android Bootlaoder界面”。它实际上对我们来说并不重要。

5)接下来,使用降低音量键,移动到“恢复模式”。

6) 这很重要 - 此时,请检查“Android 设备”下的设备管理器。如果您在本节或本节下根本看不到任何内容,那么我们需要手动安装它。

7) 检查“其他设备”部分,并在此处找到您的设备。右键单击->更新驱动程序-“浏览我的计算机...”->“让我从列表中选择...”并选择“ADB复合接口”。

8) 现在您甚至可以在 Recovery 中看到您的设备列在“Android 设备”下。

9) 此时写入“adb devices”,您将看到您的设备以相同的 ID 列出。

10) 现在,只需编写“adb sideload [update].zip”就完成了。

希望这可以帮助。

于 2015-03-15T06:06:05.717 回答
14

我最近遇到了这个问题(但在通过 wifi 进行调试之前工作正常)并且由于上述答案都没有帮助我让我分享我所做的事情。

  1. 转到开发者选项
  2. 找到选择 USB 配置并单击它
  3. 选择 MTP(媒体传输协议)

注意:如果设置为此选项,请先选择另一个选项,例如 PTP,然后再次将其设置为 MTP。

更新

PTP 代表“图片传输协议”。当 Android 使用此协议时,它对计算机来说就像一个数码相机。

MTP 实际上是基于 PTP 的,但增加了更多的功能,或者说是“扩展”。PTP 的工作原理与 MTP 类似,通常由数码相机使用。

于 2016-01-12T19:51:53.160 回答
10

听起来可能很傻,但在我的情况下,USB 电缆太长了(即使质量很好)。它适用于我的平板电脑,但不适用于手机。要检查这一点,如果您在 Linux 上运行,请运行 lsusb 以确保您的设备至少正式连接到 USB 端口。

于 2016-12-03T01:27:14.597 回答
7

从根本上说,这个问题与不能让 MTP+ADB 工作有关,而例如 PTP+ADB 可能工作。就我而言,当我插入 Nexus 5 时,Windows 7 将只安装完全忽略 ADB 的 MTP 驱动程序。我在其他任何地方都找不到解决这个问题的好方法,所以在这里我提供了步骤(我从其他来源复制的一些步骤):

0) 拔下 Nexus 5。确保您选择了 MTP 和 ADB。

1) 确保 Google SDK 中的 sdk\extras\google\usb_driverandroid_winusb.inf 具有以下行(在该文件的两个位置):

;Google Nexus(通用)

%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4EE2&MI_01

注意:VID_18D1 是 Google VID,PID_4EE2 是 MTP+ADB 的 PID,MI_01 表示 ADB 在接口 1 上(MTP 在接口 0 上)。

您可以通过将 Nexus 5 插入 Linux 系统并键入 lsusb 来检查接口上的内容。

2)首先删除所有已安装的谷歌USB驱动程序。一个很好的工具叫做 USBDeview,可以在以下位置找到: http ://www.nirsoft.net/utils/usb_devices_view.html 下载该工具并运行它(无需安装)。查看 USBDeview 窗口最左侧的彩色状态指示器。绿色表示设备功能正常。粉红色表示设备可以拔下电源并正常工作(尽管它实际上可能无法正常工作)。红色表示禁用的 USB 设备。灰色(下图圈出)表示设备已安装,但未连接。其次,删除标题中带有“Google”、“Linux”、“ADB”或“Android”字样的所有灰色项目。

3) 现在删除旧缓存的 Google *.inf 文件。打开 Windows 资源管理器并导航到 C:\Windows\INF 目录。那里的某个地方有一个“oemN.inf”文件(其中 N 是一个在您的系统上会有所不同的数字),它是 android_usb.inf 的副本——要做的是找到哪个文件并将其删除。Windows 在此处保留 INF 文件的缓存,我们发现有时会使用较旧的缓存副本而不是较新的版本。

一种使用 Windows 资源管理器查找哪一个的简单方法: - 在资源管理器的搜索框中,输入不带引号的“androidwinusb86.cat”。- 通常搜索将为空,因为没有文件名具有此模式。- 转到工具/文件夹选项,单击搜索选项卡,然后单击始终搜索文件名和内容。单击应用 - 再次搜索。这次它应该列出一些文件,例如“oem90.inf”(您将拥有一个或多个,具有不同的编号)。

现在使用 Windows 资源管理器并删除上面匹配的“oemNN.*”文件(仅那些包含 androidwinusb 的文件。)。

4) 我们现在想在 windows 发现 ADB 之前禁用 windows 安装 MTP。现在在同一目录中搜索 wpdmtp.* 文件。这些文件的存在将强制在同一(复合)设备中安装 MTP,而不考虑 ADB 类。将这些文件移出 \inf 文件夹

5) 重新插入设备。这一次,MTP 和 Android ADB 驱动安装都会失败。

6) 在设备管理器中查找其他设备,展开后应显示 Nexus 5 和 MTP。右键单击并导航到 sdk\extras\google\usb_driver\android_winusb.inf 来更新 Nexus 5。

将 wpdmtp.* 文件移回 \inf 文件夹。右键单击 MTP 设备并更新。

7) 如有必要,请在您的 Nexus 5 上确认此 PC 可以访问手机。

8) 如果一切按预期进行,您应该在设备管理器中看到以下内容:

  • 展开安卓设备。右键单击Android Composite ADB Interface,选择Properties,选择选项卡Details,在Property 下选择Hardware Ids。您应该会看到 USB\VID_18D1&PID_4EE2&MI_01

  • 展开便携式设备。右键单击 Nexus 5,选择属性,选择选项卡详细信息,在属性下选择硬件 ID。您应该看到 USB\VID_18D1&PID_4EE2&MI_00

于 2015-02-04T20:37:25.267 回答
7

尝试使用 PdaNet。你可以从这里下载

当您插入设备时,它会安装缺少的驱动程序。

显然,请确保“开发人员选项”中的“调试 USB”选项已打开。

另一件事,重要的是在使用之前卸载任何设备已安装的驱动程序。

于 2014-09-07T10:56:30.783 回答
5

连接 USB 后,在 Android 设备上设置 > 开发人员选项 > 撤销 USB 调试授权 USB 调试。拔下 USB 并重新连接,然后“允许 USB 调试”。

于 2016-08-01T17:05:00.097 回答
3

对于那些没有任何答案的人,请尝试关闭chrome://inspect/#devicesChrome 中的选项卡(如果它是打开的)。这对我有用。

于 2021-01-02T12:21:42.987 回答
2

转到提示命令并键入“adb devices”。如果它为空,请确保您允许“MTP 传输”或类似功能,并在手机上启用调试。

要启用调试,请遵循本教程: https ://www.kingoapp.com/root-tutorials/how-to-enable-usb-debugging-mode-on-android.htm

然后再次输入“adb devices”。如果其中列出了设备,那么它现在应该可以工作了。

于 2018-09-12T16:43:00.657 回答
1

将您的环境变量设置Path为指向adb应用程序所在的位置:[directory of sdk folder]\platform-tools

于 2015-05-07T22:16:31.193 回答
1

确保您使用的是 USB 而不是闪电电缆。我在尝试使用两端带有闪电电缆的电源线进行连接时遇到了这个问题,但它不会列出该设备。但是切换到 USB 转闪电电缆是可行的。

于 2019-10-07T06:20:18.183 回答
1

通过点击内部版本号 7 次启用开发人员模式对我有用。

于 2018-12-09T16:45:04.927 回答
0

为您的设备查找驱动程序并安装它们这将是您设备的终结 未检测到问题 Windows 存在驱动程序问题,有时会因覆盖现有驱动程序而变得混乱

您也可以尝试从Win7卸载驱动并重新安装

于 2014-03-17T10:48:56.960 回答
0

对于那些在将他们的 android 设备升级到 android 10 后遇到问题的人,相同的 PTP 模式选项将按照 user3135185 的规定工作

于 2020-05-29T03:23:55.187 回答
0

检查 USB 电缆是否确实能够传输数据。一些更便宜的,尤其是那些旨在为非电话/计算机设备充电的,可能只支持充电。

您可以通过检查设备是否显示为可挂载文件系统来验证这一点。在 Linux 中,您还可以使用该命令lsusb来检查它是否被检测到。

于 2020-05-28T12:42:56.567 回答
-2
  1. 在您的计算机上下载并安装 Moborobo 软件。
  2. 通过 USB 电缆将您的设备连接到 USB 调试。
  3. 现在打开 moborobo,它将连接到您的 android。
  4. 保持连接,现在您的设备应识别为 adb 设备并被列出。
于 2015-03-20T08:08:38.553 回答