一款让普通应用通过adb或root权限直接调用系统API的工具,通过app_process启动的Java进程作为中介,实现更高效、更可靠的系统级操作。
- v13.6.0
- 发布于
- 2025年5月25日
- 30,733
- 星标
- 4,399,491
- 下载
- 同步于
- 1 天前
最新版本
v13.6.02025年5月25日 21:19下载慢?可在上方随时切换镜像源
项目说明
项目概述
Shizuku 是一款让普通应用通过 adb 或 root 权限直接调用系统 API 的工具。传统的 root 应用通过在 su shell 中执行命令来操作,存在速度极慢(多次进程创建)、处理文本极不可靠、功能受限于可用命令等缺点。Shizuku 采用了完全不同的方式,引导用户通过 root 或 ADB 先运行一个 Shizuku 服务进程。应用启动时会收到指向 Shizuku 服务端的 Binder 引用,Shizuku 作为中间人接收应用请求,转发给系统服务,并返回结果。对应用而言,使用方式几乎与直接调用系统 API 无异。
主要功能
- 以更高权限调用系统 API:让普通应用能够以 adb 或 root 权限执行系统级操作
- Binder IPC 代理机制:作为应用进程与 system_server 进程之间的中间人,转发 Binder 请求
- 支持 ADB 和 Root 两种启动方式:即使没有 root 权限,也可以通过 ADB 启动服务
- 两种实现版本:Shizuku(标准 Android 应用)和 Sui(Magisk 模块)
- 支持 Android 6.0+ 设备
- 提供 Maven 依赖:
dev.rikka.shizuku:api - MIT 许可,开源免费
适用人群
- 需要系统级 API 访问权限的 Android 应用开发者
- 希望通过 adb 权限(而非 root)运行系统级操作的高级用户
- 开发需要 Shizuku 集成的应用(如冰箱、小黑屋等知名工具)
快速上手
- 访问 用户指南与下载页面 获取安装说明
- 在 Android 设备上安装 Shizuku 管理器应用
- 通过 ADB 命令启动 Shizuku 服务(非 root 设备)或直接以 root 权限启动(root 设备)
- 应用集成 Shizuku API 后即可调用系统级功能
核心优势
- 无需 root 也能调用系统 API(需 ADB 权限)
- 相比传统的 su shell 方式,速度更快、更可靠、功能更丰富
- 对应用开发者而言,使用体验与直接调用系统 API 几乎一致
- Apache 2.0 许可(含特定限制条款)
系统要求
- 操作系统:Android 6.0+
- 非 root 设备需通过 ADB 启动服务(每次重启后需重新执行)
- 无需 root,但需要具备一定的 Android 调试能力
注意事项
- ADB 权限存在限制,不同系统版本权限不同
- Android 9 及以上版本对隐藏 API 的使用有限制
- Android 8.0(API 26)上 ADB 缺少
registerUidObserver权限,进程可能无法自动收到 Binder - 直接使用
transactRemote时需注意不同 Android 版本的 API 差异 - 许可证限制:禁止使用
manager/src/main/res/mipmap*/ic_launcher*.png图片文件(除非用于展示 Shizuku 本身),禁止将应用命名为Shizuku或使用moe.shizuku.privileged.api作为应用 ID
历史版本
排序