You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android Studio 4.1 ADB Server加载设备时偶尔冻结,求解决方案

解决ADB Server卡在"Loading Devices..."的其他方案

我之前也碰到过一模一样的ADB卡“Loading Devices...”的问题,除了adb kill-server & adb start-server这个临时修复手段,还有不少更彻底的方案可以尝试,而且确实有大量开发者都遇到过这个困扰。下面整理了几个我亲测有效的方法:

  • 检查USB连接与调试模式
    有时候是物理连接的问题:换个USB口(优先用主机后面的USB3.0/2.0口,避免用前置面板的),或者换一根质量好的USB数据线;同时确保设备的USB调试已经开启,并且在弹出的“允许调试”对话框里勾选了“始终允许此计算机调试”。

  • 重置ADB授权
    如果是授权相关的问题,可以删除ADB的授权文件:

    • Windows:删除C:\Users\<你的用户名>\.android\adbkeyadbkey.pub
    • macOS/Linux:删除~/.android/adbkey~/.android/adbkey.pub
      然后重启ADB服务,重新连接设备时会再次弹出授权提示,重新授权即可。
  • 检查ADB版本与设备兼容性
    老旧的ADB版本可能和新系统的设备不兼容,建议更新Android SDK Platform Tools到最新版本。你可以通过adb version查看当前版本,然后去SDK管理器里更新或者直接下载对应平台的最新工具包替换。

  • 排查端口占用
    ADB默认用5037端口,如果这个端口被其他程序占用,就会导致ADB无法正常工作。你可以用命令检查占用情况:

    • Windows:netstat -ano | findstr :5037,找到对应的PID后在任务管理器里结束该进程
    • macOS/Linux:lsof -i :5037,然后用kill -9 <PID>杀掉占用进程
      之后再重启ADB服务即可。
  • 禁用USB选择性暂停(仅Windows)
    Windows的USB选择性暂停功能可能会导致ADB连接中断,你可以这样关闭:

    1. 打开设备管理器,找到“通用串行总线控制器”下的“USB根集线器”
    2. 右键选择“属性”,切换到“电源管理”标签
    3. 取消勾选“允许计算机关闭此设备以节约电源”
    4. 对所有USB根集线器重复这个操作
  • 尝试无线ADB连接
    如果有线连接总是出问题,可以试试无线ADB:先通过USB连接设备并确保ADB正常,然后执行adb tcpip 5555,拔掉USB线,再执行adb connect <设备IP>:5555(设备IP可以在设置-关于手机-状态信息里找到),这样无线连接可能会更稳定。

另外,在社区里很多用户都反馈过这个问题,常见的触发场景包括:设备系统更新后、USB线老化、后台程序占用ADB端口、ADB授权文件损坏等,上面的方法基本覆盖了大部分情况。

内容的提问来源于stack exchange,提问作者Cafer Mert Ceyhan

火山引擎 最新活动