android - 如何修改 AOSP 以允许特定应用程序获得 root 访问权限?

标签 android c linux-kernel root android-source

我正在处理 AOSP。我已经成功地添加了我的 apk 来构建。现在我想授予对我的应用程序的根访问权限。我不想提供对其他应用程序的根访问权限或在我的构建中安装 super 用户应用程序。我只想添加我的应用程序以获得根访问权限。我怎样才能做到这一点?

我浏览了路径 system/extras/su 中的 su.c 文件,但我无法理解整个代码。

当我浏览代码时,我认为如果可以的话我的目标就可以实现modify su.c 以提供对我的应用程序的根访问权限,compile it and add the binary到构建。我说得对吗?

最佳答案

您正朝着正确的方向前进。您需要检查 su.c 的源代码 您可能面临的唯一问题是如何以 root 身份运行您的程序。为此,您需要为应用程序的可执行文件设置 SUID 粘滞位。为此,您需要修改 system/core/include/private/android_filesystem_config.h 文件(结构 android_files[]),例如对于 su 程序,您可以看到如何位已设置:

{ 06755, AID_ROOT,      AID_ROOT,      "system/xbin/su" },

关于android - 如何修改 AOSP 以允许特定应用程序获得 root 访问权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13802869/

相关文章:

android - 将标题设置为操作栏时出现空指针异常

Android KeyEvent.getCharacters() 或 keyEvent.characters 已弃用

c - BPF 尾调用未调用

c - 如何在没有 rand() 函数的情况下生成随机数?

c - 对内核模块源代码进行适当的功能检查

linux - 负责配置进程数和线程数的Linux配置参数有哪些?

java - Android:在 ExpandableListViewActivity 的子级中访问 TextView

android - 获取 Android 中 strings.xml 文件中存在的字符串列表

c - 判断树是否为二叉搜索树 (BST) 的递归函数(修改后的代码)

c - 为什么“while(!feof(file))”总是错误的?