1. 程式人生 > >android app請求獲取root許可權

android app請求獲取root許可權

要讓Android應用獲得Root許可權,首先Android裝置必須已經獲得Root許可權。

應用獲取Root許可權的原理:讓應用的程式碼執行目錄獲取最高許可權。在Linux中通過chmod 777 [程式碼執行目錄]

程式碼如下:

  1. /** 
  2.  * 應用程式執行命令獲取 Root許可權,裝置必須已破解(獲得ROOT許可權) 
  3.  *  
  4.  * @return 應用程式是/否獲取Root許可權 
  5.  */
  6. publicstaticboolean 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.         returnfalse;  
  19.     } finally {  
  20.         try {  
  21.             if (os != null) {  
  22.                 os.close();  
  23.             }  
  24.             process.destroy();  
  25.         } catch (Exception e) {  
  26.         }  
  27.     }  
  28.     returntrue;  
  29. }  
呼叫程式碼:
  1. @Override
  2. publicvoid onCreate(Bundle savedInstanceState) {  
  3.     super.onCreate(savedInstanceState);  
  4.     setContentView(R.layout.main);  
  5.     //當前應用的程式碼執行目錄
  6.     upgradeRootPermission(getPackageCodePath());  
  7. }  

執行上述程式碼後,系統會彈出對話方塊“是否允許獲取Root許可權”,此時選擇允許即可。