Android APP 启用 ROOT
在默认情况下,Android 13 并未开启 ROOT 功能,如需要启用 ROOT 需要做如下修改:
build/make/target/product/base_system.mk
在 PRODUCT_PACKAGES
最后增加字段
su \
frameworks/base/core/jni/com_android_internal_os_Zygote.cpp
找到 DropCapabilitiesBoundingSet
函数,将其功能废除
static void DropCapabilitiesBoundingSet(fail_fn_t fail_fn) {
return;
// for (int i = 0; prctl(PR_CAPBSET_READ, i, 0, 0, 0) >= 0; i++) {;
// if (prctl(PR_CAPBSET_DROP, i, 0, 0, 0) == -1) {
// if (errno == EINVAL) {
// ALOGE("prctl(PR_CAPBSET_DROP) failed with EINVAL. Please verify "
// "your kernel is compiled with file capabilities support");
// } else {
// fail_fn(CREATE_ERROR("prctl(PR_CAPBSET_DROP, %d) failed: %s", i, strerror(errno)));
// }
// }
// }
}
system/core/init/selinux.cpp
找到 SelinuxSetEnforcement
函数,配置 is_enforcing
为 false
system/core/libcutils/fs_config.cpp
找到 { 04750, AID_ROOT, AID_SHELL, 0, "system/xbin/su" },
改为
{ 06755, AID_ROOT, AID_SHELL, 0, "system/bin/su" },
system/extras/su/su.cpp
找到 main
函数,注释检测
system/extras/su/Android.bp
找到 install_in_xbin: true,
将其删除