Android Fastboot设备未返回设备

56

目前我想在我的设备上(自定义硬件设备)重新安装Android。我已经构建了镜像文件。但是当我输入fastboot devices时,什么也没有返回。

adb devices正常工作,它可以识别我的设备。fastboot flashall -w也不起作用,它只返回<waiting for devices>,并且一直保持这种状态,直到我退出。

所以,70-android.rules.d文件正确。我也设置了ANDROID_PRODUCT_OUT。但是有人知道为什么fastboot看不到我的设备,但adb可以吗?

重启udev或adb都无效。这是网络上一些人推荐的方法。

操作系统:Ubuntu 11.10


提及你的计算机运行的操作系统以及一些关于硬件的信息可能会很有用,而不是仅仅说“自定义”。另外,在http://forum.xda-developers.com/上询问可能更有用,因为XDA更多地处理自定义ROM和其他相关事项。 - Reed
你已经进入了引导程序并连接了USB吗? 你的设备有USB驱动程序吗? - Emrah Mehmedov
你找到答案了吗?我也有同样的问题。 - Pavel Vyazankin
6个回答

92

对于Windows系统:

  • 打开设备管理器
  • 找到未知的“Android”设备(可能在其它设备下列出,带有感叹号)
  • 更新驱动程序
  • 浏览我的计算机以查找驱动程序软件
  • 让我从设备列表中选择,选择列出所有设备
  • 在“Android设备”或“Google Inc”下,您将找到“Android引导加载程序接口”
  • 选择“Android引导加载程序接口”
  • 当它说驱动程序可能不兼容时,单击“是”

2
太好了,这对我起作用了。不幸的是,OP没有在运行Windows,所以这可能不会得到任何赞,但这在Windows上绝对有效。 - jewbix.cube
1
Android Bootloader Interface驱动程序用于Fastboot,ADB接口驱动程序用于ADB操作。 - Siv
2
如果它已经被列为“三星移动USB CDC复合设备”,该怎么办? - endolith
5
如果在列出所有设备时找不到驱动程序,请尝试使用来自谷歌的驱动程序(https://developer.android.com/studio/run/win-usb)。 - Victor Santos
1
在我的情况下,我必须从Windows设置应用程序中安装驱动程序作为“可选更新”。 - Fenhl
显示剩余4条评论

61

你是否正在将设备重启进入引导程序,并在引导程序菜单上输入快速启动USB模式?

尝试一下:

adb reboot bootloader

然后查找屏幕上的提示,进入快速启动模式。


是的,一旦我发出“adb reboot bootloader”命令,我就进入了快速启动屏幕 - 然后“fastboot devices”开始工作。这很奇怪,我不知道为什么,但还是谢谢你的提示。 - Jalpesh
2
当手机处于快速启动模式时,它会宣布自己是另一种设备。这导致计算机端需要安装额外的设备驱动程序。 - Martin Stein
1
很好的指针。不过对我来说,“adb reboot-bootloader”才是有效的方法。 - Fydo
2
显然,Fastbook无法与当前处于恢复模式的设备通信(至少是我的问题)。运行此操作完全解决了我的问题(将CWM恢复更新到新版本)。 - Excalibur
谢谢,它起作用了。在执行adb reboot-bootloader之后,我去设备管理器手动安装了USB驱动程序。 - John
@Fydo,你确定那个连字符吗?你可能错了。其他人都是使用adb reboot bootloader,没有连字符。 - barlop

3
除了之前的回答,可能还存在fastboot命令版本的问题。尝试通过Android SDK Manager下载最新版本,而不是操作系统存储库中提供的默认版本。
还有一件事可以做来解决这个问题。在尝试刷Nexus Player时,我遇到了类似的问题。所有adb命令在正常模式下都能正常工作。但是,在切换到fastboot模式后,我无法执行fastboot命令。我的设备在fastboot devices命令的输出中不可见。我已经在/etc/udev/rules.d/11-android.rules文件中设置了正确的规则。lsusb命令显示设备已插入。
解决方案非常简单。我通过Android Studio的SDK Manager下载了fastboot,而不是使用Ubuntu软件包中提供的默认版本。
你所需的只是sdkmanager。下载Android SDK Platform Tools并将默认的/usr/bin/fastboot替换为新的即可。

经过长时间的研究和许多令人沮丧的失败,这也是我找到的解决方案。 - Finni

2
我遇到了同样的问题,但我是通过虚拟机运行Ubuntu 12.04。我的设备是Nexus 10。我在虚拟机的设置中将USB设备添加为过滤器(使用virtual box)。
我添加的设备是“三星Nexus 10”。
问题在于,一旦设备进入快速启动模式,它会显示为不同的设备:“Google,Inc Android 1.0”。因此,在虚拟机中执行“lsusb”时不会显示连接的设备,显然,“fastboot devices”也不会返回任何内容,直到我也将“第二个”设备作为虚拟机的过滤器添加。
希望这能帮助到某些人。

-1

您必须以root身份运行fastboot。请尝试使用sudo fastboot


1
一样的,仍然没有显示任何内容。我需要交叉检查一下,有文件权限吗!! - CoDe
这在我的WSL中有效(使用usbipd)。 - MrObjectOriented

-2
如果在输入fastboot devices时没有任何输出,那么说明你的设备无法进入fastboot模式。请确保同时按下这三个按钮:电源键、音量键('+'和'-')以进入fastboot模式。然后你就可以通过fastboot devices命令查看你的设备并继续刷机了。
注意:我之前只按下了电源键和'-'键进入fastboot模式,结果遇到了同样的问题。

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