首页 / 开发笔记 / 设备调试

设备调试 / FIELD NOTE 01

ADB 连不上设备:先分清「看不见」和「未授权」

从 devices -l 的四种结果开始,逐层检查 USB、授权与设备选择,避免一上来重装整个开发环境。

本文为基于公开技术资料编写的解释性教程。命令和输出示例不代表已在你的设备上验证;执行前请核对版本、目标设备和数据影响。

先把问题变成一条可观察的状态

“电脑连不上手机”包含好几种不同故障:电脑没有识别数据连接、ADB 服务没有枚举到设备、设备拒绝调试授权,或命令发给了另一台设备。把它们混在一起处理,容易出现反复更换线缆、重启 IDE,却说不清哪一步起作用的情况。

先解锁手机,确认开发者选项中的 USB 调试已经启用,然后在终端运行下面的命令。它只列出设备,不会安装、删除或重置手机上的应用。

adb version
adb devices -l

保留命令的原始输出。后面每做一个调整,都用同一条命令比较前后结果。不要把“Android Studio 能打开”当作设备连接已经成功的证明。

按输出选择下一步

看到的结果它说明什么先检查什么
只有表头当前 ADB 没有列出设备数据线、USB 接口、调试开关
unauthorized设备尚未授权这台电脑手机解锁后是否弹出授权框
offline设备被识别,但无法正常通信重连、设备状态与 ADB 服务
deviceADB 连接可用继续验证具体命令

“device”不是所有应用功能都正常的结论。它也不代表设备已经完成开机、应用已经安装,或者具备 root 权限;这些是后续独立的验证项。

最小改动的排查顺序

  1. 先确认线缆能传输数据。能充电不等于能传数据;换一个已知可用的线缆,比同时修改多个设置更容易得到结论。
  2. 出现 unauthorized 时,查看手机上的 RSA 授权提示。只为自己信任的电脑授权。没有提示时,可以重新连接,再观察手机屏幕。
  3. 仍为 offline 时,先拔插一次;再考虑重启 ADB 服务。服务重启会中断这台电脑上的其他 ADB 会话,不要在别的安装或测试任务进行时操作。
adb kill-server
adb start-server
adb devices -l

如果系统里有多套 Platform Tools,核对终端实际调用的 adb 路径。不同工具启动的服务可能让现象变得混乱。Windows 设备驱动问题也应单独排查,不要把其他系统的驱动解决方案照搬过来。

多台设备时,明确指定目标

当模拟器和真机同时在线,直接执行 adb shell 可能提示多设备错误。使用 devices -l 输出的序列号选择目标;下面的 SERIAL 是占位符,需要替换。

adb -s SERIAL shell getprop ro.build.version.release
adb -s SERIAL shell getprop ro.product.model

两条命令返回预期设备的信息后,再进行安装或日志采集。分享排查记录时可以遮住序列号,但本地命令需要保留完整值。

怎样算排查完成

建议以三个条件作为结束标准:设备列表稳定显示 device;指定序列号后的只读命令能成功执行;断开并重新连接后结果仍然一致。若只重启了一次就暂时恢复,应把结论写成“连接已恢复,根因未确认”,不要把它写成线缆故障或系统缺陷。

排查完成后关闭不再需要的调试连接。若测试期间修改过 USB 模式或其他设备设置,把它们恢复到使用者原来的状态。

资料与进一步阅读

整理日期:2026-10-15。工具参数及平台行为请以所用版本的官方文档为准。内容原则 · 报告错误