Android中判断手机是否已经Root
2012-11-17 09:49
357 查看
在Android中,虽然我们可以通过Runtime.getRuntime().exec("su")的方式来判断一个手机是否Root,
但是该方式会弹出对话框让用户选择是否赋予该应用程序Root权限,有点不友好。
其实我们可以在环境变量$PATH所列出的所有目录中查找是否有su文件来判断一个手机是否Root。
当然即使有su文件,也并不能完全表示手机已经Root,但是实际使用中作为一个初略的判断已经很好了。
另外出于效率的考虑,我们可以在代码中直接把$PATH写死。
实例1
但是该方式会弹出对话框让用户选择是否赋予该应用程序Root权限,有点不友好。
其实我们可以在环境变量$PATH所列出的所有目录中查找是否有su文件来判断一个手机是否Root。
当然即使有su文件,也并不能完全表示手机已经Root,但是实际使用中作为一个初略的判断已经很好了。
另外出于效率的考虑,我们可以在代码中直接把$PATH写死。
实例1
private final static int kSystemRootStateUnknow=-1; private final static int kSystemRootStateDisable=0; private final static int kSystemRootStateEnable=1; private static int systemRootState=kSystemRootStateUnknow; public static boolean isRootSystem() { if(systemRootState==kSystemRootStateEnable) { return true; } else if(systemRootState==kSystemRootStateDisable) { return false; } File f=null; final String kSuSearchPaths[]={"/system/bin/","/system/xbin/","/system/sbin/","/sbin/","/vendor/bin/"}; try{ for(int i=0;i<kSuSearchPaths.length;i++) { f=new File(kSuSearchPaths[i]+"su"); if(f!=null&&f.exists()) { systemRootState=kSystemRootStateEnable; return true; } } }catch(Exception e) { }
相关文章推荐
- 判断android设备(如手机)是否已经ROOT的方法
- Android 判断手机是否已经ROOT
- Android中判断手机是否已经Root
- android通过代码判断手机是否root
- android判断手机是否root
- Android 一:通过adb命令判断手机是否被root过
- Android 判断手机是否root
- 判断手机是否ROOT 代码实现+ Android 操作系统 获取Root权限 原理解析
- 判断android手机是否root过。
- Android代码判断手机是否已root
- android 判断手机是否Root
- Android 判断手机是否root
- android判断手机是否root
- Android中判断手机是否联网实例
- Android 通用获取Ip的方法(判断手机是否联网的方法)!!!
- JS判断客户端是否是iOS或者Android手机移动端
- Android创建快捷方式和判断是否已经创建
- 总结:android 创建快捷方式的两种方式+判断是否已经创建+删除快捷方式
- Android开发中判断手机是否安装了QQ或者微信
- android 判断手机是否已联网