默认情况下,小米限制了 ADB 中部分命令的使用。这在进行投屏等操作的时候将是一个严重的障碍。
具体来说,包括这些:
adb shell input
adb shell monkey
adb shell appops
adb shell pm grant
adb shell pm revoke
adb shell pm reset-permissions
adb shell pm clear
adb shell settings
adb shell getevent
adb shell sendevent
adb shell uiautomator
而重新启用它们的办法是在开发者选项中打开 “USB 安装” 和 “USB 调试(安全设置)”。
然而,这些选项的打开,目前均强制要求联网并登录小米账号,且插入 SIM 卡。
本人认为,这是过分的、侵犯用户合理使用权的。用户理应有不登录账号而使用手机全部功能的权利。本人搜索得出如下办法,MIUI 10~14 均已测试有效,其他版本也可一试。
该方法要求打开基本的 ADB 调试,且设备已经取得 Root。
ADB (例如 Shizuku) 的权限不足以进行此操作。必须 Root。
因此,本方法依然无法让你做到完全不注册小米账号使用手机(因为解锁 Bootloader 并取得 Root 的过程依然需要一个小米账号)。
进入 Root Shell,执行如下命令,设置 Prop 值:
setprop persist.security.adbinstall 1 setprop persist.security.adbinput 1 setprop persist.fastboot.enable 1
完成后可以执行 getprop 检查。
先在手机上关闭所有后台进程,回到桌面。之后执行:
am force-stop com.miui.securitycenter
避免因为手机管家运行的干扰导致修改失败。
修改
/data/data/com.miui.securitycenter/shared_prefs/remote_provider_preferences.xml
文件,在合理位置插入如下内容:<boolean name="permcenter_install_intercept_enabled" value="false"/> <boolean name="security_adb_install_enable" value="true" />
并保存更改。
- 一切大功告成。你应该可以在开发者设置看到两个选项均已成功打开,并且 scrcpy 等投屏软件均已经可以使用。
理论上这无需重启就可以生效。若无效,请重启后再次尝试。
本站文章除注明转载/出处外,均为本站原创或翻译,
并在 知识共享署名 4.0 国际许可协议下提供。