android - 是否可以以root身份运行android应用程序
问题描述
我知道可以以root身份运行命令Runtime.getRuntime().exec("su -c ps");
但是使用File()
to read on/data/user/0/......
有可能吗?也许与 Magisk 一起?
解决方案
在 JVM 内部没有root
用户,因此这是不可能的。这可能会更好地解释它:
https ://android.stackexchange.com/questions/133466/how-does-supersu-provide-root-privilege
而且我几乎不使用“不可能”这个词,但在这种情况下,只有底层 Linux 操作系统可以提供 root shell——C/C++ 本地程序集也可以提升权限,因为它在实际操作系统上运行。Runtime.getRuntime().exec()
也只是在 shell 中执行(它不是 JVM 的一部分)。
推荐阅读
- python - 我需要使用 python 将 SQL 命令发送到 INNER JOIN 两个 TABLES
- regex - 正则表达式:)
- node.js - 打开新的集成终端VSCode Mac时如何运行安装node.js?
- python - 如何控制(减少)网格矩阵中的数字 1?
- java - 严重:servlet [ProfileServlet] 的 Servlet.service() 在路径 [/Homework] 的上下文中抛出异常 java.lang.NumberFormatException: null
- javascript - 在 useEffect 将 onChange 事件设置为元素后,如何获取更新状态?
- javascript - 如何从一个 html 文件中获取特定的 div 并使用普通 JavaScript 将其放置在另一个 html 文件中?
- css - Angular Ngx图表不增加宽度
- hibernate - 双向多对一,表之间没有 FK
- r - 如何使用 grep 进行过滤