不 root 也能用系统 API 的原理
本篇讲清楚 Shizuku 到底做了什么:为什么普通应用够不着的系统能力,它能借 adb 权限够着,以及它和传统 root 工具的路径差别。配对实操见无线调试配对激活教程,跑不通先看配对失败与重启失效排查。
一、安卓的权限墙砌在哪
安卓默认把每个应用关进沙盒:独立的 Linux 用户、独立的存储,运行时权限只覆盖位置、存储这类用户可见的资源。但还有一档能力被锁在更里面——调用隐藏的系统 API、改动安全的系统设置、管理其他应用的组件。这些操作需要 shell 或 root 身份,普通应用即使请求了所有权限也够不着。
很多实用工具就卡在这一档:冻结预装、精细管理权限、访问受保护目录、回装旧版本应用。传统出路只有刷机 root,代价是失去保修、银行类应用可能拒跑。
二、Shizuku 的做法:一个常驻服务进程
Shizuku 的思路是先借一条合法通道启动一个服务进程,让它持有 adb 或 root 身份,然后把 binder 递给需要高权限的应用——应用通过这个 binder 直接与系统服务交互。
这与反复执行 su 命令的传统路径有明显差别:
- 快:传统方式每执行一条指令都要新起进程、解析文本结果;binder 直连的额外开销极小,体验接近应用直接调用 API。
- 门槛低:只需要 adb 权限的应用不必再要求 root,未 root 的手机也能用上同一批能力。
- 对开发者友好:接入只需少量代码,所以越来越多工具主动支持它。
三、启动方式按设备情况选
服务进程的三种启动路径,按系统版本与 root 状态对号入座:
| 设备情况 | 启动路径 | 特点 |
|---|---|---|
| 已 root | 应用内直接启动 | 可设开机自启,日常无感 |
| Android 11+ 未 root | 无线调试 | 无需电脑,配对一次即可 |
| Android 10 及以下未 root | 电脑 adb | 需要数据线与电脑配合 |
大多数人走的是第二条路。具体步骤(含配对码怎么填)已单独整理成无线调试配对激活教程。
四、它自己不干活,价值在生态里
Shizuku 本身只维护这条高权限通道,真正的功能由支持它的第三方应用实现:权限管理类工具用它调整隐藏权限项,冻结类工具用它停用预装,文件管理器用它访问 Android/data 目录。授权记录可以在应用内逐条查看、随时收回。
想从安装开始一步步来,Shizuku 介绍站上按「三种启动方式 → 配对实战 → 常见问题」的顺序走一遍即可。