Shizuku 解决的是一个很具体的矛盾:安卓上不少好用的工具都需要 root 权限,可为了装它们去 root 手机,代价又太大。它换了个思路,在系统里起一个带高权限的常驻服务,让其他应用通过标准接口向它申请调用,既拿到了系统能力,又不用交出 root。

安卓上有一批工具需要 root 权限才能干活,但为了用它们而去 root 手机,代价太大——保修没了、支付类应用可能罢工、系统更新也麻烦。
Shizuku 的思路是绕开"给每个应用单独提权"这件事。它在系统里起一个常驻服务,这个服务拥有高权限,其他应用通过标准 API 向它申请调用。结果是:应用开发者不用再写 root shell 命令,用户也不用把 root 权限交出去。
对普通用户来说,装了 Shizuku 之后,那些原本提示"需要 root"的应用可以直接用了。它比传统的 shell 方式快得多,因为走的是系统 API 而不是命令行解析。
已 root 的手机最简单,打开 Shizuku 授予 root 权限,点启动就完事,而且能设成开机自启,不用每次手动。
没 root 的话有两条路:
一是电脑 ADB,安卓 11 以下只能这么干。手机连电脑,开 USB 调试,在电脑的命令行里执行 Shizuku 给的那行启动脚本。缺点是每次重启手机都要重连一次电脑。
二是无线调试,安卓 11 及以上支持,全程不用连电脑。但受系统限制,每次重启后需要重新走一遍配对流程。
第一步,先打开开发者选项:进设置里的关于手机(或我的设备),找到系统版本号或 MIUI 版本这一项,连续点若干次,直到提示已经进入开发者模式。
第二步,在开发者选项里同时打开 USB 调试和无线调试两项。
第三步,打开 Shizuku,点配对,然后进系统的无线调试页面,选"使用配对码配对设备",屏幕上会弹出一个六位数配对码。
第四步,把配对码填进 Shizuku 弹出的通知栏输入框里。这里有个坑:部分深度定制系统(比如 MIUI)的通知样式不是原生的,输入框显示不出来,需要先把通知样式改成原生样式,否则配对码没法输入。
第五步,配对成功后回到 Shizuku 点启动,等几秒钟,状态会从"未运行"变成"运行中"。之后在已授权应用列表里,给需要用它的应用打开授权开关即可。
不同厂商对开发者选项做了各自的限制,出问题基本都出在这里:
小米 / MIUI:除了要开 USB 调试(安全设置)之外,别用手机管家里的扫描功能,它会把开发者选项给关掉。通知样式要改成原生,否则配对码输入不了。
OPPO / ColorOS:需要在开发者选项里关闭权限监控。
魅族 / Flyme:需要关闭 Flyme 支付保护。
vivo / OriginOS:它的设置界面不支持分屏,要在开发者设置里开启"强行将活动设为可调整大小"。
另外三条通用规则:设备重启后必须重新打开无线调试并重启 Shizuku;没有 WiFi 连接时无法启用无线调试(已经启动的不受影响);开发者选项和 USB 调试不能关。
Shizuku 本身不带功能界面,它的价值在于给别的应用提供权限通道。常见的用法包括:免 root 冻结应用、批量管理应用权限、调用隐藏的系统设置、备份应用数据、用 LSPatch 这类工具给应用打补丁。
已授权应用列表里能看到哪些应用申请过授权,可以随时撤销。如果某个应用提示 Shizuku 服务不可用,先确认 Shizuku 本身是否在运行,再看授权列表里有没有给它开权限。
【适配新版安卓系统的】
权限接口变更。
【无线调试配对流程的】
引导做了简化,针对常见机型给出了更明确的问题提示。
【服务启动速度和稳定性优化】
后台被系统回收的概率降低。
已知问题:部分定制系统在息屏一段时间后会自动断开无线调试,需要在开发者选项里把"息屏时保持 WiFi 连接"设为始终。
应用截图
(您的评论需要经过审核才能显示)
0条评论