【Android】【root & remount】adb su如何添加密码校验

前言

客户想在user版本添加su 权限,并实现user版本的root remount功能。

当前思路时执行su时添加密码,如果密码正确设置 sys.变量为true。adb root时判断sys变量为true时,执行root动作。

su 添加密码实现

su.cpp 添加密码部分:

bash 复制代码
int main(int argc, char** argv) {
......

    // The default user is root.
    uid_t uid = 0;
    gid_t gid = 0;
    //add start
    std::string build_type = android::base::GetProperty("ro.build.type", "");
    if(build_type == "user") {
        std::string password;
        std::cout << "Enter password: "<<std::endl;
        std::cin >> password;
        std::cout << "Your password: "<<password<<std::endl;

        if(password == "1234"){
            std::cout << "Password verify succes!"<<std::endl;
            android::base::SetProperty("sys.root.enable", "1");
        } else {
            std::cout << "Password verify fail !"<<std::endl;
            android::base::SetProperty("sys.root.enable", "0");
            return 1;
        }
    }
    //add end
}
相关推荐
城东米粉儿32 分钟前
Android Glide 笔记
android
城东米粉儿1 小时前
Android TheRouter 笔记
android
城东米粉儿7 小时前
Android AIDL 笔记
android
城东米粉儿7 小时前
Android 进程间传递大数据 笔记
android
城东米粉儿8 小时前
Android KMP 笔记
android
冬奇Lab9 小时前
WMS核心机制:窗口管理与层级控制深度解析
android·源码阅读
松仔log9 小时前
JetPack——Paging
android·rxjava
城东米粉儿10 小时前
Android Kotlin DSL 笔记
android
城东米粉儿10 小时前
Android Gradle 笔记
android