Shizuku 服务启动的三种方式 - adb root 自动化
启动方式概览
Shizuku 服务进程必须被拉起来才能让 Runner 正常工作。目前有三种方式可以启动服务:
| 方式 | 权限等级 | 设备重启后 | Android 版本 | 适用场景 |
|---|---|---|---|---|
| 无线调试配对 | shell | 手动重新启动 | 11+ | 大多数无 Root 用户 |
| USB adb 连接 | shell | 手动重新启动 | 任意 | 旧版本 Android / 电脑在场时 |
| Magisk / root | root | 自动启动 | 任意(需 root) | 有 Root 权限的设备 |
方式一:无线调试配对(推荐)
这是最主流的启动方式,不需要电脑在场:
- 先完成配对流程(见 02-setup-basics/01-pairing-shizuku-service.md)
- 配对后每次启动服务只需在 Shizuku 主应用里点一下「启动」
- 手机重启后无线调试不会自动开启,需要手动打开无线调试 → 进入 Shizuku → 点击启动
优点:最方便、不依赖电脑、shell 权限覆盖大多数日常操作。
方式二:USB adb 连接
适用于 Android 10 及以下、或无线调试配对异常的情况:
- 电脑安装 adb 工具(Android SDK Platform Tools)
- 手机开启 USB 调试(开发者选项里)
- USB 线连接电脑,确认「允许调试」弹窗
- 在电脑终端执行:
adb shell sh /sdcard/Android/data/moe.shizuku.privileged.api/start.sh
- 看到 Shizuku 主应用显示"已启动"就成功了
每次手机重启后需要重新连电脑执行这条命令。可以写个脚本或用 adb 辅助工具(如 Bumblebee)简化,但本质上还是要电脑在场。
方式三:Magisk / 其他 root 框架
设备已 root 的情况下最方便:
- 确保设备已装 Magisk(或其他 root 框架)
- 打开 Shizuku 主应用
- 在启动方式里选择「直接启动」或通过 root 授权弹窗
- 服务进程会以 root(uid=0)身份启动
- Magisk 有开机自启功能,服务会在开机后自动拉起
优点:无需手动干预、拿到 root 权限。缺点:需要 root 设备,部分定制系统 root 流程复杂。
自动启动方案
重启后自动启动 Shizuku 服务是很多人追求的体验,目前可行的方案:
Magisk 模块:安装 Shizuku 的 Magisk 模块后服务随开机自动启动。这是最稳定的方案,但前提是设备已 root。
Tasker + adb Wi-Fi:通过 Tasker 监听开机事件 → 自动连接 adb Wi-Fi → 执行启动脚本。需要:
- 电脑端 adb Wi-Fi 服务长期运行(或路由器做端口转发)
- 手机端 Tasker 有 adb Wi-Fi 插件权限
Shizuku 主应用定时唤醒:Shizuku 主应用本身没有定时启动功能,但可以用 Macrodroid 等自动化 App 通过 Intent 触发启动 Activity。
启动成功的标志
无论用哪种方式,启动成功后你会看到:
- Shizuku 主应用显示绿色的"已启动"状态
- ShizukuRunner 主界面顶部显示"SHIZUKU 已运行 已授权"
- Runner 执行任意命令时弹窗能正常返回结果(不会报错"Shizuku 未启动")