简介 |
您所在的位置:网站首页 › 打开root权限有什么坏处嘛 › 简介 |
# 简介 Shizuku 可以帮助普通应用借助一个由 app_process 启动的 Java 进程直接以 adb 或 root 特权使用系统 API。 Shizuku 这个名字来自这里 (opens new window)。 # Shizuku 为何而生?Shizuku 的诞生主要有两大目的: 提供一个方便地使用系统 API 的方式 为部分只需要 adb 权限的应用开发提供便利 # Shizuku 与“传统”做法对比 # “传统”做法以启用/禁用组件为例,一些需要 root 权限的应用直接在 su 中执行 pm disable。 执行 su 执行 pm disable (pre-Pie) 使用 app_process 启动 Java 进程(参见此处 (opens new window)) (Pie+) 执行原生程序 cmd(参见此处 (opens new window)) 处理参数,通过 binder 与 system server 交互,处理结果输出文字结果其中每个“执行”都意味着新进程建立,su 内部使用 socket 与 su daemon 交互,大量的时间和性能被消耗在这样的过程中。(部分设计不佳的应用甚至会每次执行指令都执行一次 su) 此类做法的缺点在于: 极慢 需要处理文本来获取结果 功能受制于可用的指令 即使 adb 有足够权限,应用也需要 root 权限才可使用 # Shizuku 做法Shizuku app 会引导用户使用 root 或是 adb 方式运行一个进程(Shizuku 服务进程)。 应用进程启动时 Shizuku 服务进程发送 binder 至应用进程 应用通过该 binder 与 Shizuku 服务进程交互,Shizuku 服务进程通过 binder 与 system server 交互Shizuku 的优点在于: 极小额外时间及性能消耗 与直接调用 API 体验几乎一致(应用开发者只需添加少量代码) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |