USB调试开启步骤详解,Open-AutoGLM前置准备
在部署 Open-AutoGLM 这类基于视觉语言模型的手机端 AI Agent 框架前,一个常被低估却至关重要的环节是:设备连接的稳定性与可控性。很多用户卡在第一步——“AI 没反应”“adb devices 显示 offline”“指令发出去但手机没动作”,问题根源往往不在模型或代码,而在于 ADB 通道未真正打通。本文不讲大模型原理,也不堆砌参数配置,而是聚焦最实际、最高频、最容易出错的前置动作:如何正确、稳定、可复现地开启 USB 调试,并完成真机连接验证。所有操作均经实测(Android 12–14 主流机型),覆盖 Windows/macOS 双平台,适配 Open-AutoGLM 的运行要求。
1. 为什么 USB 调试必须手动开启?它不是“自动连上就行”那么简单
很多人以为“插上线 → adb devices 看到设备 → 就能跑 Open-AutoGLM”,但现实远比这复杂。USB 调试本质上是一道双向授权门禁:
- 手机端需明确允许“这台电脑通过 ADB 控制我”;
- 电脑端需确保 ADB 工具能识别、通信、发送指令;
- 中间还夹着 USB 驱动、权限弹窗、输入法接管、MIUI/ColorOS 等定制系统拦截等隐形关卡。
Open-AutoGLM 的核心能力——截图理解界面、点击坐标、输入文字、滑动操作——全部依赖 ADB 的毫秒级响应。一旦 USB 调试未启用、驱动异常或权限被拒,后续所有 AI 规划都将悬在半空,无法落地。这不是“多试几次”的问题,而是必须一次做对的基础链路。
所以,与其在 main.py 报错后反复排查,不如花 10 分钟把这一步做到位。下面的操作,每一步都对应一个真实踩坑场景。
2. 手机端设置:从开发者模式到 ADB Keyboard 全流程
2.1 开启开发者选项(不是所有手机都叫“关于手机”)
不同品牌路径略有差异,但逻辑一致:找到系统版本信息入口,连续点击触发隐藏菜单。以下是主流机型实测路径:
- 华为/荣耀(EMUI/HarmonyOS):设置 → 关于手机 → 版本号(连续点击 7 次,出现“您已进入开发者模式”)
- 小米/Redmi(MIUI):设置 → 我的设备 → 全部参数 → MIUI 版本(连续点击 7 次)
- OPPO/一加(ColorOS):设置 → 关于手机 → 版本信息 → 版本号(连续点击 7 次)
- vivo/iQOO(OriginOS):设置 → 系统管理 → 关于手机 → 版本信息 → 点击“Funtouch OS 版本” 7 次
- 三星(One UI):设置 → 关于手机 → 软件信息 → Android 版本(连续点击 7 次)
注意:部分新机型(如 HarmonyOS 4.2+)需先开启“简易模式”再进入设置,否则“关于手机”入口被折叠。若找不到,请在设置顶部搜索框直接输入“开发者选项”。
2.2 开启 USB 调试(关键一步,90% 失败源于此)
进入开发者选项后,向下滚动找到并开启以下三项(缺一不可):
- USB 调试(必须开启,这是 ADB 通信的基础)
- USB 调试(安全设置)(部分 MIUI/EMUI 强制要求,否则 adb connect 后显示 unauthorized)
- 通过 USB 验证应用(防止恶意 APK 安装,Open-AutoGLM 安装 ADB Keyboard 时需此权限)
开启后,务必用 USB 线将手机连接电脑。此时手机屏幕会弹出“允许 USB 调试吗?”提示框,勾选“始终允许来自这台计算机”,再点确定。这一步生成的 RSA 密钥配对,是后续免密连接的前提。
实测提醒:若弹窗未出现,请检查 USB 线是否为数据线(非仅充电线),并在手机通知栏下拉,确认 USB 连接模式为“文件传输(MTP)”或“传输文件”,而非“仅充电”。部分手机需在弹窗出现时,先点击通知栏 USB 设置,再选择“文件传输”。
2.3 安装并启用 ADB Keyboard(让 AI 能“打字”)
Open-AutoGLM 的自然语言指令常含文字输入(如搜索关键词、填写账号),而标准安卓输入法无法被 ADB 直接控制。ADB Keyboard 是专为此设计的轻量输入法,它绕过系统输入法框架,直接接收 ADB shell input 命令。
- 下载安装包:前往 Open-AutoGLM 官方 releases 页面 下载
adb-keyboard.apk(通常在 assets 中) - 安装方式:
- 电脑端执行
adb install adb-keyboard.apk(需已连接且授权) - 或将 APK 文件传到手机,用文件管理器点击安装(需开启“未知来源应用安装”)
- 电脑端执行
- 启用输入法:
设置 → 语言与输入法 → 虚拟键盘 → 管理键盘 → 勾选ADB Keyboard
→ 返回上一级 → 默认键盘 → 选择ADB Keyboard
验证是否生效:在手机任意可输入框(如微信聊天框)长按,调出输入法切换菜单,应能看到 ADB Keyboard 图标。若无,重启手机或重新勾选。
3. 电脑端环境配置:ADB 工具安装与验证
3.1 下载并配置 ADB(Windows/macOS 通用)
ADB 工具包由 Google 提供,无需完整 Android SDK。推荐直接下载精简版 platform-tools:
- Windows:访问 Android SDK Platform-Tools 官网,下载
platform-tools-latest-windows.zip - macOS:下载
platform-tools-latest-darwin.zip
解压后,将platform-tools文件夹路径加入系统环境变量:
Windows:
- Win + R → 输入
sysdm.cpl→ 高级 → 环境变量 - 在“系统变量”中找到
Path→ 编辑 → 新建 → 粘贴platform-tools解压后的完整路径(如C:\tools\platform-tools) - 重启命令提示符,执行
adb version,应返回类似Android Debug Bridge version 1.0.41
- Win + R → 输入
macOS:
- 打开终端,执行
nano ~/.zshrc(或~/.bash_profile) - 在文件末尾添加:
export PATH=$PATH:/path/to/platform-tools(将/path/to/platform-tools替换为你的实际路径) - 执行
source ~/.zshrc,再运行adb version验证
- 打开终端,执行
关键检查:
adb version成功 ≠ 设备连接成功。这只是工具就绪,下一步才是真机握手。
3.2 连接验证:三步确认法(避免“假在线”)
执行adb devices后,常见输出有三种,只有最后一种代表真正可用:
- ❌
List of devices attached(空行)→ 未连接或驱动异常 - ❌
List of devices attached→XXXXXX unauthorized→ 手机未授权(回看 2.2 步骤) List of devices attached→XXXXXX device→绿色通行灯亮起
但“device”状态仍可能不稳定。建议追加两步验证:
- 截图验证:
adb shell screencap -p /sdcard/screen.png && adb pull /sdcard/screen.png ./
若本地生成screen.png且内容清晰,说明 ADB 具备完整读写能力。 - 点击验证:
adb shell input tap 500 1000(模拟点击屏幕坐标 x=500, y=1000)
若手机屏幕对应位置有明显反馈(如图标高亮、页面跳转),证明控制链路闭环。
故障速查:若
screencap失败,大概率是 MIUI/EMUI 的“USB 调试(安全设置)”未开启;若input tap无反应,检查是否开启了“USB 安装未知应用”或被手机管家拦截。
4. Open-AutoGLM 控制端部署与连接测试
4.1 克隆代码与依赖安装(极简流程)
# 克隆仓库(使用 HTTPS,无需配置 SSH) git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 创建并激活虚拟环境(强烈推荐,避免依赖冲突) python3 -m venv .venv source .venv/bin/activate # macOS/Linux # .venv\Scripts\activate # Windows # 安装核心依赖(requirements.txt 已适配最新版本) pip install -r requirements.txt pip install -e .验证安装:运行
python -c "import phone_agent; print('OK')",无报错即成功。
4.2 连接方式选择:USB 优先,WiFi 备用
USB 连接(推荐首次部署):
确保手机已授权、adb devices显示device,直接使用设备 ID:python main.py --device-id <your-device-id> --base-url http://your-server-ip:8000/v1 --model "autoglm-phone-9b" "打开小红书"WiFi 连接(适合远程开发):
需先用 USB 连接执行初始化:adb tcpip 5555 # 切换设备到 TCP 模式 adb disconnect # 断开 USB adb connect 192.168.x.x:5555 # 替换为手机 WiFi IP(可在手机 WLAN 设置中查看)注意:部分路由器会隔离同网段设备,若
adb connect失败,尝试关闭手机“智能 WiFi 切换”或改用热点共享电脑网络。
4.3 快速功能测试(5 分钟验证全链路)
无需等待大模型加载,先用内置脚本快速验证:
# 测试云端模型服务是否可达(替换为你自己的 base-url) python scripts/check_deployment_cn.py --base-url http://10.1.21.133:8000/v1 --model autoglm-phone-9b预期输出包含{"status": "success", "model": "autoglm-phone-9b"}。若失败,请检查:
- 云服务器防火墙是否放行 8000 端口
- vLLM 是否正常运行(
ps aux | grep vllm) --base-url中的 IP 是否为服务器内网 IP(若从外网访问,需用公网 IP + 端口映射)
5. 常见问题直击:从报错日志反推根本原因
| 报错现象 | 根本原因 | 一句话解决 |
|---|---|---|
adb devices显示unauthorized | 手机未勾选“始终允许”或 USB 模式非文件传输 | 重新插拔 USB,确认弹窗已授权,通知栏设为“文件传输” |
ERROR: ADBKeyboard not installed or enabled | ADB Keyboard 未安装,或未在系统设置中启用为默认输入法 | 重装 APK,进设置 → 语言与输入法 → 启用并设为默认 |
Connection refused(main.py 报错) | --base-url指向错误(如用了 localhost)、云服务未启动、端口未映射 | 用curl http://server-ip:8000/v1/models在电脑端测试连通性 |
No module named 'vllm' | 控制端未安装 vLLM(仅需云端安装,控制端不需要) | 删除requirements.txt中vllm行,或注释掉pip install -r中相关行 |
| 指令执行缓慢/卡在“正在截图” | 手机性能不足(尤其低端机)、截图分辨率过高、WiFi 延迟大 | 在main.py中降低--screenshot-size参数(如--screenshot-size 1080x1920) |
🧩 经验之谈:Open-AutoGLM 对截图质量敏感。若手机为 2K 屏,建议强制降采样至 1080p 再输入模型,既提速又提准。这不是妥协,而是工程权衡。
6. 总结:USB 调试不是“开关”,而是一条需要亲手铺设的轨道
回顾整个流程,开启 USB 调试绝非简单勾选一个选项。它是一条由手机系统设置、USB 物理链路、电脑驱动环境、输入法接管权限共同构成的精密轨道。Open-AutoGLM 的惊艳能力——让 AI 理解屏幕、规划动作、自动执行——必须在这条轨道上才能平稳飞驰。任何一环松动,都会导致指令悬停、操作失效、调试崩溃。
因此,当你下次面对adb devices的空白输出,或unauthorized的冰冷提示,请不要急于重装驱动或怀疑模型。静下心,回到本指南的每一步:确认开发者选项是否真正激活、USB 弹窗是否勾选“始终允许”、ADB Keyboard 是否在输入法列表中置顶、screencap是否能成功拉取图片。这些看似琐碎的动作,恰恰是通往手机端 AI 自动化的第一块基石。
现在,你已握有稳定连接的钥匙。下一步,就是让 Open-AutoGLM 接管你的手机,开始第一次真正的自然语言操控。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。