获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了。
- // 获取ROOT权限
- public void get_root(){
-
- if (is_root()){
- Toast.makeText(mCtx, "已经具有ROOT权限!", Toast.LENGTH_LONG).show();
- }
- else{
- try{
- progress_dialog = ProgressDialog.show(mCtx,
- "ROOT", "正在获取ROOT权限...", true, false);
- Runtime.getRuntime().exec("su");
- }
- catch (Exception e){
- Toast.makeText(mCtx, "获取ROOT权限时出错!", Toast.LENGTH_LONG).show();
- }
- }
-
- }
其中is_root()判断是否已经具有了ROOT权限。只要/system/bin/su、/system/xbin/su这两个文件中有一个存在,就表明已经具有ROOT权限,如果两个都不存在,则不具有ROOT权限。
- // 判断是否具有ROOT权限
- public static boolean is_root(){
-
- boolean res = false;
-
- try{
- if ((!new File("/system/bin/su").exists()) &&
- (!new File("/system/xbin/su").exists())){
- res = false;
- }
- else {
- res = true;
- };
- }
- catch (Exception e) {
-
- }
- return res;
- }