Flutter Android 无线调试No supported devices connected

Flutter Android 无线调试故障处理

场景

Android Studio 可以识别无线调试手机,但命令行执行 flutter run 或 flutter devices 时提示:

text 复制代码
No supported devices connected

或者手机显示为:

text 复制代码
unsupported • Android null (API null) (unsupported)
adb.exe: device 'adb-xxxx' not found

原因

无线调试通过 mDNS 暴露设备时,ADB 可能显示类似这样的 serial:

text 复制代码
adb-AKJEVB5920011350-n1wAVi (2)._adb-tls-connect._tcp

Flutter 命令行有时会把这个 mDNS serial 截断成 adb-AKJEVB5920011350-n1wAVi,然后再调用 adb -s 读取设备属性,于是 ADB 找不到这个设备。Android Studio 能识别,不代表 Flutter CLI 一定能正确解析这个 mDNS 名称。

固定处理流程

先查看 ADB 发现的无线调试服务:

powershell 复制代码
adb mdns services

找到输出里的真实 ip:port,例如:

text 复制代码
adb-xxxxx    _adb-tls-connect._tcp    192.168.0.192:45541

用 ip:port 手动连接:

powershell 复制代码
adb connect 192.168.0.192:45541

确认 Flutter 已识别为 Android 设备:

powershell 复制代码
flutter devices

正常时应看到类似:

text 复制代码
BKQ AN00 (mobile) • 192.168.0.192:45541 • android-arm64 • Android 16 (API 36)

运行时显式指定这个设备:

powershell 复制代码
flutter run -d 192.168.0.192:45541

注意事项

无线调试端口可能每次重连都会变化。下次再次出现 No supported devices connected 时,不需要改项目代码,重复:

powershell 复制代码
adb mdns services
adb connect <ip:port>
flutter run -d <ip:port>

如果存在同一台手机的两个连接,一个是 mDNS 名称,一个是 ip:port,优先使用 ip:port。

本机示例

曾遇到的设备:

text 复制代码
BKQ AN00
mDNS serial: adb-AKJEVB5920011350-n1wAVi (2)._adb-tls-connect._tcp
ip:port: 192.168.0.192:45541
相关推荐
2501_9445215911 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
大龄秃头程序员18 小时前
Flutter 架构里总被混淆的 IoC、DI、Service Locator,到底是什么关系?
flutter
事圆则缓1 天前
Flutter 与原生交互的最后一层:RTC 视频帧怎么走
flutter·音视频·实时音视频
2601_949847751 天前
jose 跨端三方库仓颉适配全流程
前端·javascript·flutter
2601_949970691 天前
msgpackr 跨端三方库仓颉适配全流程
前端·javascript·flutter
2601_949970692 天前
HumanizeDuration 跨端三方库仓颉适配全流程
前端·javascript·flutter
传奇开心果编程2 天前
【Flutter踩坑排雷】第3课:const 误用坑|const 错误使用引发 UI 异常与性能损耗
flutter·移动开发·跨平台·dart·编程语言理论·编程框架·声明式ui
程序员老刘2 天前
你的Flutter项目要不要紧急升级3.47.8?
flutter·客户端
Talyra422 天前
不想开会员,我写了一个记账 App
flutter
2601_949575862 天前
JSON5 跨端三方库仓颉适配全流程
前端·javascript·flutter