Process localProcess = Runtime.getRuntime().exec("su");
這條代碼獲得root權限
OutputStream localOutputStream = localProcess.getOutputStream();
DataOutputStream localDataOutputStream = new DataOutputStream(localOutputStream);
從Process對象獲得輸出流,然後我們就可以執行Linux命令了
localDataOutputStream.writeBytes(String str);
其中str是String類型的變量。注意在str最後有換行
例如 String str="mkdir /mnt/sdcard/zhycheng\n";
InputStream localInputStream = localProcess.getInputStream();
DataInputStream localDataInputStream = new DataInputStream(localInputStream);
這兩條代碼獲得輸出流
例如 String out=localDataInputStream .ReadLine();
這是從控制台輸出的
每輸出之後調用
localDataOutputStream.flush();
還要調用localProcess .waitFor();
通過調用測試命令int i = execRootCmdSilent("echo test");判斷是否獲得root權限,i不等於-1就獲得了root權限