要让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;
  29. }

调用代码:


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

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

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