Murasaki API 是 KernelSU 内核级 API SDK,向下兼容 Shizuku 和 Sui。
基于 Shizuku-API 和 Sui 开发,感谢 Rikka 的杰出工作!
- 三级权限体系:Shell / Root / Kernel 三级权限
- 向下兼容:完全兼容 Shizuku API,现有应用无需修改
- 内核级功能:HymoFS、SEPolicy 注入等内核级 API
- 直连模式:直接从 ServiceManager 获取服务,无需 Provider
| 等级 | 常量 | UID | 说明 | 兼容性 |
|---|---|---|---|---|
| 0 | LEVEL_SHELL |
2000 | Shell/ADB 权限 | Shizuku 兼容 |
| 1 | LEVEL_ROOT |
0 | Root 权限 | Sui 兼容 |
| 2 | LEVEL_KERNEL |
0 | 内核级权限 | Murasaki 专有 |
def murasaki_version = "1.0.0"
// Murasaki API
implementation "com.anatdx.murasaki:api:$murasaki_version"
// 如需支持 Shizuku 回退
implementation "com.anatdx.murasaki:provider:$murasaki_version"import com.anatdx.murasaki.Murasaki;
// 初始化 (自动选择最高可用等级)
int level = Murasaki.init(getPackageName());
switch (level) {
case Murasaki.LEVEL_KERNEL:
// 内核级功能可用
break;
case Murasaki.LEVEL_ROOT:
// Root 功能可用 (回退到 Sui)
break;
case Murasaki.LEVEL_SHELL:
// Shell 功能可用 (回退到 Shizuku)
break;
default:
// 无可用服务
break;
}现有 Shizuku/Sui 应用无需修改即可使用:
import rikka.shizuku.Shizuku;
import rikka.sui.Sui;
// 完全兼容 Shizuku API
Shizuku.requestPermission(REQUEST_CODE);
Shizuku.addBinderReceivedListener(() -> {
// Binder ready
});
// 完全兼容 Sui API
if (Sui.init(packageName)) {
// Sui available
}当 Murasaki.getPrivilegeLevel() >= LEVEL_KERNEL 时,以下功能可用:
import io.murasaki.IHymoFsService;
IHymoFsService hymoFs = Murasaki.getHymoFsService();
// 隐藏路径
hymoFs.addHideRule("/system/app/Bloatware");
// 重定向路径
hymoFs.addRedirectRule("/system/build.prop", "/data/fake_build.prop", 0);
// 隐身模式
hymoFs.setStealthMode(true);import io.murasaki.IKernelService;
IKernelService kernel = Murasaki.getKernelService();
// 检查 UID 是否被授予 root
boolean hasRoot = kernel.isUidGrantedRoot(uid);
// 注入 SEPolicy
kernel.injectSepolicy("allow untrusted_app system_file file read");Murasaki 按以下顺序尝试连接服务:
- 直连模式 - 直接从 ServiceManager 获取
io.murasaki.IMurasakiService - 桥接模式 - 通过 activity 服务桥接 (Sui 兼容)
- Provider 模式 - 通过 ContentProvider (Shizuku 兼容)
- Android 6.0+ (API 23+)
- KernelSU / APatch (内核级功能)
- 或 Magisk + Sui (Root 功能)
- 或 Shizuku (Shell 功能)
Murasaki 完全兼容 Shizuku API v13.x,包括:
rikka.shizuku.Shizuku类的所有方法rikka.sui.Sui类的所有方法ShizukuProvider内容提供者ShizukuBinderWrapper远程调用UserService用户服务
详细 Shizuku API 文档请参阅 Shizuku-API。
MIT License
- 添加
io.murasaki.Murasaki类,支持三级权限体系 - 添加直连 ServiceManager 模式
- 添加内核级服务接口 (IKernelService, IHymoFsService)
- 完全兼容 Shizuku API v13.1.5
基于 Shizuku-API v13.1.5,完整历史请参阅 Shizuku-API Releases