admin管理员组

文章数量:1609986

目前来说Android平台并没有提供能够root检查的工具。但是我们可以通过两种方式来判断

手机里面是否有su文件

这个su文件是不是能够执行

但是这两种检查方式都存在缺点。

第一种存在误测和漏测的情况,比如su没有放到常规路径下,就容易漏掉,但是这种情况是有办法尽量规避(或者说减小误差)的,比喻运行which检查,或者遍历shell中所有的环境变量的PATH;还有一种情况是手机没有root但是存在su文件,这种情况一般出现在手机曾经被root过,但是又进行了系统还原操作。

而第二种,有可能检查不准确,或者会有弹窗提示用户是否要授予root权限。

一、 检查手机是否存在su文件

private static boolean checkSuFile() {

Process process = null;

try {

// /system/xbin/which 或者 /system/bin/which

process = Runtime.getRuntime().exec(new String[]{"which", "su"});

BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));

if (in.readLine() != null) return true;

return false;

} catch (Throwable t) {

return false;

} finally {

if (process

本文标签: 手机rootcheckandroid