Flutter Android 无线调试No supported devices connected
Flutter Android 无线调试故障处理
场景
Android Studio 可以识别无线调试手机,但命令行执行flutter run或flutter devices时提示:
No supported devices connected或者手机显示为:
unsupported • Android null (API null) (unsupported) adb.exe: device 'adb-xxxx' not found原因
无线调试通过 mDNS 暴露设备时,ADB 可能显示类似这样的 serial:
adb-AKJEVB5920011350-n1wAVi (2)._adb-tls-connect._tcpFlutter 命令行有时会把这个 mDNS serial 截断成adb-AKJEVB5920011350-n1wAVi,然后再调用adb -s读取设备属性,于是 ADB 找不到这个设备。Android Studio 能识别,不代表 Flutter CLI 一定能正确解析这个 mDNS 名称。
固定处理流程
先查看 ADB 发现的无线调试服务:
adb mdns services找到输出里的真实ip:port,例如:
adb-xxxxx _adb-tls-connect._tcp 192.168.0.192:45541用ip:port手动连接:
adb connect 192.168.0.192:45541确认 Flutter 已识别为 Android 设备:
flutter devices正常时应看到类似:
BKQ AN00 (mobile) • 192.168.0.192:45541 • android-arm64 • Android 16 (API 36)运行时显式指定这个设备:
flutter run-d 192.168.0.192:45541注意事项
无线调试端口可能每次重连都会变化。下次再次出现No supported devices connected时,不需要改项目代码,重复:
adb mdns services adb connect <ip:port> flutter run-d <ip:port>如果存在同一台手机的两个连接,一个是 mDNS 名称,一个是ip:port,优先使用ip:port。
本机示例
曾遇到的设备:
BKQ AN00 mDNS serial: adb-AKJEVB5920011350-n1wAVi (2)._adb-tls-connect._tcp ip:port: 192.168.0.192:45541