要让Android应用获得Root权限,首先Android设备必须已经获得Root权限。

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

代码如下:

 
  
  1. /** 
  2.  * 应用程序运行命令获取 Root权限,设备必须已破解(获得ROOT权限) 
  3.  *  
  4.  * @return 应用程序是/否获取Root权限 
  5.  */ 
  6. public static boolean upgradeRootPermission(String pkgCodePath) { 
  7.     Process process = null
  8.     DataOutputStream os = null
  9.     try { 
  10.         String cmd="chmod 777 " + pkgCodePath; 
  11.         process = Runtime.getRuntime().exec("su"); //切换到root帐号 
  12.         os = new DataOutputStream(process.getOutputStream()); 
  13.         os.writeBytes(cmd + "\n"); 
  14.         os.writeBytes("exit\n"); 
  15.         os.flush(); 
  16.         process.waitFor(); 
  17.     } catch (Exception e) { 
  18.         return false
  19.     } finally { 
  20.         try { 
  21.             if (os != null) { 
  22.                 os.close(); 
  23.             } 
  24.             process.destroy(); 
  25.         } catch (Exception e) { 
  26.         } 
  27.     } 
  28.     return true

调用代码:

 
  
  1. @Override 
  2. public void onCreate(Bundle savedInstanceState) { 
  3.     super.onCreate(savedInstanceState); 
  4.     setContentView(R.layout.main); 
  5.     //当前应用的代码执行目录 
  6.     upgradeRootPermission(getPackageCodePath()); 

执行上述代码后,系统会弹出对话框“是否允许获取Root权限”,此时选择允许即可。

转载请注明地址: http://orgcent.com/android-chmod-root-permission/ | 萝卜白菜的博客