如何在Android程序中以编程方式检测root权限并请求超级访问权限

3

我需要知道设备是否已经取得了root权限,还想知道如何请求超级用户权限。同时我也想知道是否已经被授权访问。如果可能的话,请告诉我。非常感谢...


从Play商店下载并使用“Root Checker”应用程序来检查根访问权限。 - Giridharan
1
不,我的意思是我想在我的应用程序中使用那些功能。我想以编程的方式实现它。 - Md. Jobayer
1个回答

3

试试这个:

public static boolean isRooted() {
    boolean rooted = false;

    String binaryName = "su";

    String[] places = {"/sbin/", "/system/bin/", "/system/xbin/", "/data/local/xbin/",
            "/data/local/bin/", "/system/sd/xbin/", "/system/bin/failsafe/", "/data/local/"};

    for (String where : places) {
        if (new File(where + binaryName).exists()) {
            rooted = true;
            break;
        }
    }

    return rooted;
}

在模拟器上运行时要小心,它看起来像一个已经取得root权限的设备(您可以从上面的代码看出)。

1
啊...兄弟,要为你投票我需要15个声望值。我是一个新用户,没有足够的声望值。如果我有的话,我会给你投票的。 - Md. Jobayer
这对你有帮助吗? - Ciro Rizzo
1
是的,我明白你做了什么,以及如何通过获取任何上层文件夹的存在来检测root。 - Md. Jobayer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接