zoukankan      html  css  js  c++  java
  • android请求root权限

    应用获取Root权限的原理:让应用的代码执行目录获取最高权限。在Linux中通过chmod 777 [代码执行目录]

    //请求root权限
        public static boolean upgradeRootPermission(String pkgCodePath) {  
            Process process = null;  
            DataOutputStream os = null;  
            Boolean resBoolean;
            try {  
                String cmd="chmod 777 " + pkgCodePath;  
                process = Runtime.getRuntime().exec("su"); //切换到root帐号  
                os = new DataOutputStream(process.getOutputStream());  
                os.writeBytes(cmd + " ");  
                os.writeBytes("exit ");     //退出root 账号,不执行会卡住机器
                os.flush();  
                resBoolean= process.waitFor()==0;  
            } catch (Exception e) {  
                return false;  
            } finally {  
                try {  
                    if (os != null) {  
                        os.close();  
                    }  
                    process.destroy();  
                } catch (Exception e) {  
                }  
            }  
            return resBoolean;  
        }  
       

    //调用函数

    if(upgradeRootPermission(getPackageCodePath()))
            {
                Toast.makeText(MainActivity.this, "Root 权限请求成功", Toast.LENGTH_SHORT).show();
            }
            else{
                Toast.makeText(MainActivity.this, "Root 权限请求失败,无法使用!程序将自动退出!", Toast.LENGTH_SHORT).show();
                finish();
            }

  • 相关阅读:
    codevs 1213 解的个数(我去年打了个表
    176. [USACO Feb07] 奶牛聚会
    codevs 1515 跳
    codevs 1994 排队 排列组合+高精度
    poj 1811 Pallor Rho +Miller Rabin
    Miller_Rabin codevs 1702 素数判定2
    Lucas
    cos改ip
    用户名 不在 sudoers文件中,此事将被报告
    continue break
  • 原文地址:https://www.cnblogs.com/lzh-Linux/p/4478793.html
Copyright © 2011-2022 走看看