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

时间:2012-12-10 14:26:00

标签: android c linux-kernel root android-source

我正在开发 AOSP 。我已经成功添加了我的apk来构建。现在我想给我的应用程序root权限。我不想提供对其他应用程序的root访问权限或在我的构建中安装超级用户应用程序。我只是想添加我的应用程序以获得root访问权限。我怎样才能做到这一点?

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

当我查看代码时,我认为如果我可以modify su.c 为我的应用提供root权限compile it and add the binary,我的目标就可以实现建立。我是对的吗?

2 个答案:

答案 0 :(得分:6)

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

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

答案 1 :(得分:3)

ChainFire编写了a guide on su以及如何将其用于普通应用。如果您打算使用自己手机以外的任何其他设备,我建议您采用这种方法。