Android设备无法被adb识别

我的Android设备无法被eclipse或adb识别。 我的操作系统是Windows 7 64位,我正在使用Stock Android 4.4.2的Nexus 4。

以下是关于这个问题的一些细节:

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

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

更新:感谢回复,问题解决(现在)。 我按照以下顺序尝试了以下build议:

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

所以我重新设置我的设备到MTP模式和debugging模式,以检查它是否仍然会由于某种原因被adb识别。 当它处于MTP模式时,它确定不会被adb识别。 我不知道前几天是如何得到认可的,因为我从来没有把设备设置成PTP模式。 无论如何,我的问题的解决scheme是,我的Nexus 4必须在PTP模式,当然在debugging模式下得到承认亚行。

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

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

从根本上讲,这个问题与不能获得MTP + ADB工作有关,例如PTP + ADB可能工作。 在我的情况下,当我插入Nexus 5时,Windows 7将只安装完全忽略ADB的MTP驱动程序。 我无法在其他地方为这个问题find一个好的解决scheme,所以在这里我提供了一些步骤(我从其他来源复制的一些步骤):

0)拔下Nexus 5.确保您select了MTP和ADB。

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

;谷歌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)首先删除所有已安装的Google USB驱动程序。 一个好的工具称为USBDeview,可以在以下位置find: http : //www.nirsoft.net/utils/usb_devices_view.html下载工具并运行它(不需要安装它)。 查看USBDeview窗口最左侧的彩色状态指示器。 绿色表示设备正常工作。 粉红意味着该设备可以拔下并正常工作(虽然它可能实际上不正常工作)。 红色表示禁用的USB设备。 灰色(下方圈出)表示设备已安装,但未连接。 其次,在标题中删除所有带有“Google”,“Linux”,“ADB”或“Android”的灰色项目。

3)现在删除旧的caching的Google * .inf文件。 打开Windows资源pipe理器并导航到C:\ Windows \ INF目录。 在那里有一个“oemN.inf”文件(其中N是你的系统中的一个数字)是android_usb.inf的副本 – 要做的事情是find哪个文件并将其删除。 Windows在这里保存了INF文件的caching,而我们发现有时会使用较旧的caching副本而不是较新的版本。

一个简单的方法来find哪一个使用Windows资源pipe理器: – 在资源pipe理器的search框中,input“androidwinusb86.cat”不带引号。 – 通常search将是空的,因为没有文件名有这种模式。 – 转到工具/文件夹选项,单击search选项卡,然后单击始终search文件名称和内容。 点击应用 – 再次search。 这次它应该列出几个文件,比如“oem90.inf”(你将会有一个或者多个,具有不同的数字)。

现在使用Windows资源pipe理器,并删除上面匹配的“oemNN。*”文件(只有那些在其中有androidwinusb的文件)。

4)我们现在想要在Windows发现ADB之前禁止通过Windows安装MTP。 现在在同一个目录中searchwpdmtp。*文件。 这些文件的存在将强制安装MTP不考虑ADB类在同一(复合)设备。 将这些文件移出\ inf文件夹

5)再次插入设备。 这一次,MTP和Android ADB驱动程序安装都将失败。

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

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

7)如有必要,请在Nexus 5上确认此PC可以使用手机。

8)如果一切顺利,您应该在设备pipe理器中看到以下内容:

  • 展开Android设备。 右键单击Android复合ADB接口,select属性,select选项卡详细信息,在属性下select硬件ID。 您应该看到USB \ VID_18D1&PID_4EE2&MI_01

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

我也面临同样的问题,并尝试几乎所有可能的手动安装驱动程序来编辑winusb.inf文件。 但是没有为我工作。

其实这个解决办法很简单 它总是在那里,但我们往往错过它。

先决条件

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

脚步

1)连接你的设备,看看它是否在“Android设备”部分检测到。 如果是这样,那么确定,否则,检查“其他设备”部分,并手动安装驱动程序。

2)一定要检查“Android复合ADB接口”。 这是Android需要ADB工作的界面。

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

4)如果是,那么亚行在这一点上已经被成功检测到。 接下来,写“adb reboot bootloader”来打开引导程序。 此时检查“Android设备”下的设备pipe理器,你会发现“Android Bootlaoder Interface”。 它对我们实际上并不重要。

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

6)这是重要的 – 在这一点上,检查“Android设备”下的设备pipe理器。 如果您根本没有看到本节或本节的任何内容,那么我们需要手动安装它。

7)检查“其他设备”部分,并find您的设备在那里列出。 右键单击 – >更新驱动程序 – “浏览我的电脑…” – >“让我从列表中select…”并select“ADB复合接口”。

8)现在,即使在恢复过程中,您也可以看到列在“Android设备”下的设备。

9)在这一点上写“adb设备”,你会看到你的设备列有相同的ID。

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

希望这可以帮助。

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

它会在您插入设备时安装缺less的驱动程序。

显然要确保你在“开发人员选项”中的“debuggingUSB”选项。

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

随着USB连接,在Android设备设置>开发人员选项>撤销USBdebugging授权USBdebugging。 取下USB并重新连接,然后“允许USBdebugging”。

这可能听起来很愚蠢,但在我的情况下,USB电缆太长(即使质量好)。 它与我的平板电脑,但不是与电话。 要检查这一点,如果你运行在Linux上运行lsusb,以确保你的设备至less正式连接到USB端口。

find您的设备的驱动程序并安装它们将是您的设备的末端没有检测到的问题 Windows有驱动程序的问题,有时通过覆盖现有的驱动程序

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

设置你的环境variablesPath指向adb应用程序所在的[directory of sdk folder]\platform-tools[directory of sdk folder]\platform-tools

我最近有这个问题(但之前,通过WiFidebugging工作正常),因为没有上述答案帮助我让我分享我做了什么。

  1. 转到开发人员选项
  2. findselectUSBconfiguration并单击它
  3. selectMTP(媒体传输协议)

注意:如果设置为这个选项,则首先select另一个选项,例如PTP,然后再次将其设置为MTP。

  1. 在您的计算机上下载并安装Moborobo软件。
  2. 通过USB电缆连接设备和USBdebugging。
  3. 现在打开moborobo,它会连接到你的android。
  4. 保持联系,现在您的设备应该识别为adb设备并列出。