故障排除发布于: 阅读约 3 分钟

小米 USB 调试(安全设置)与 USB 安装怎么开?

解决小米、红米和 POCO 的 ADB 问题。打开 USB 调试(安全设置)和 USB 安装,修复 INSTALL_FAILED_USER_RESTRICTED 报错,以及电脑点击、输入无效的问题。

运行 MIUI 或澎湃 OS (HyperOS) 的小米、红米和 POCO 手机,在普通的 USB 调试之外还多了两个开关。不打开它们,ADB 能连上,但有些功能会失败:应用装不上,或者从电脑发出的点击和输入毫无反应。本文告诉你这些开关在哪里,以及各个报错是什么意思。

第一步:打开开发者选项

  1. 打开 设置 › 我的设备 › 全部参数与信息(部分机型为 设置 › 关于手机)。
  2. 连续点击 OS 版本(澎湃 OS)或 MIUI 版本 七次,直到提示「您已处于开发者模式」(You are now a developer)。
  3. 进入 设置 › 更多设置 › 开发者选项 (Additional settings › Developer options)。

第二步:三个开关

开关允许做什么什么时候需要
USB 调试 (USB debugging)基本 ADB 功能:shell、logcat、文件传输所有场景
USB 安装 (Install via USB)adb install,从电脑安装 APK安装应用
USB 调试(安全设置) (USB debugging (Security settings))发送点击、滑动和按键,授予权限屏幕控制、自动化、输入文字

后两个开关要求 登录小米账号,而且在很多机型上打开时 手机里必须插着 SIM 卡。这是小米自己的规定,不是 ADB 的要求。打开之后,一般会一直保持开启。

报错:INSTALL_FAILED_USER_RESTRICTED

adb: failed to install app.apk: Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]

有两个原因:

  1. USB 安装没有打开。 按上面的方法打开。
  2. 没有在手机上确认。 打开 USB 安装后,每安装一个 APK,手机都会弹出带倒计时的安装确认框。解锁手机,在倒计时结束前点击 继续安装 (Install)。

报错:点击和输入没反应

只打开 USB 调试时,屏幕可以投屏显示,但来自电脑的输入会被拒绝。工具可能会显示这样的错误:

java.lang.SecurityException: Injecting to another application requires INJECT_EVENTS permission

打开 USB 调试(安全设置),然后断开并重新连接。这会影响 scrcpy、ADBKit、Appium 以及所有需要发送输入的工具。

报错:开关是灰色的,或者提示需要 SIM 卡

  • 插入 SIM 卡,等有信号后再试。
  • 在 设置 › 小米账号 中登录小米账号。
  • 打开移动数据或 Wi-Fi,让账号验证能够完成。

报错:手机完全识别不到

这和小米的设置无关。在 adb devices 找不到设备 中检查数据线、USB 模式和驱动。在 Windows 上,安装小米的 USB 驱动或 Google USB Driver。

在 ADBKit 中使用小米手机

  1. 打开上面全部三个开关。
  2. 在 Chrome 或 Edge 中打开 ADBKit,通过 USB 连接,或者借助 ADBKit 代理程序通过 Wi-Fi 连接。
  3. 解锁手机,在「允许 USB 调试吗?」(Allow USB debugging?) 弹窗中点击 允许。

ADBKit 的连接帮助会针对小米手机提示 USB 调试(安全设置),因为没有它,实时画面能显示,但点击和输入都没有反应。从 ADBKit 安装 APK 会触发和 adb install 一样的手机端确认,所以请保持手机解锁。

用完记得关闭

安全设置允许电脑控制你的手机。测试结束后,关闭 USB 调试(安全设置) 和 USB 安装,或者直接关闭整个开发者选项。

其他安装报错见 adb install 报错详解。关于 bootloader 界面,见 小米 fastboot 模式。