我正在规划一个需要编辑系统文件的应用程序。
我只能使用 root 权限编辑该文件。我有一个已 root 且安装了 Superuser.apk 的开发手机。其他需要 root 的应用程序会在首次启动时请求 root 访问权限。
我想做同样的事情,但我找不到任何有关如何为我的应用程序请求超级用户权限的提示。
我发现了一些关于意图 android.intent.action.superuser 的信息,但是当我尝试启动该意图操作的活动时,我得到了一个ActivityNotFoundException
.
有任何想法吗?
该意图实际上并不为您提供超级用户权限,它只是与超级用户应用程序的权限授予机制进行交互。
真正的关键是要了解android的底层linux不支持用户权限的升级。相反,它支持(/已修改为支持)用户请求以超级用户身份运行 _some_other_process_ 的机制。
这意味着实际的 root 权限任务必须由不同的可执行文件来完成,可能是一个本机“命令行”,您将通过 su 命令或任何您特定的修改后的 Android 构建支持的委托来启动它。如果您可以弄清楚如何使用内置工具箱命令行程序之一来完成任务,那么这将是最简单的 - 例如,将文件写入其他位置,然后将其 mv (也可能是 chown)到您想要的位置。另请记住,/system 通常以只读方式安装,您必须先将其重新安装为 rw,然后才能在那里写入。
作为超级用户,对您尝试做的任何事情都要深思熟虑……很容易造成混乱或留下问题。如果您要将应用程序部署给其他人,还要考虑您将创建的安全漏洞。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)