android应用里执行cmd命令

方法一:

这是方法,添加到你的应用程序中即可,比较简陋,呵呵!
public void execShell(String cmd){
        try{  
            //权限设置
            Process p = Runtime.getRuntime().exec("su");  
            //获取输出流
            OutputStream outputStream = p.getOutputStream();
            DataOutputStream dataOutputStream=new DataOutputStream(outputStream);
            //将命令写入
            dataOutputStream.writeBytes(cmd);
            //提交命令
            dataOutputStream.flush();
            //关闭流操作
            dataOutputStream.close();
            outputStream.close();
       }  
       catch(Throwable t)  
        {  
             t.printStackTrace();  
            } 
    }

方法二:

public void execCommand(String command) throws IOException {
    Runtime runtime = Runtime.getRuntime();
    Process proc = runtime.exec(command);
    try {
        if (proc.waitFor() != 0) {
            System.err.println("exit value = " + proc.exitValue());
        }
        BufferedReader in = new BufferedReader(new InputStreamReader(
                proc.getInputStream()));
        StringBuffer stringBuffer = new StringBuffer();
        String line = null;
        while ((line = in.readLine()) != null) {
            stringBuffer.append(line+" ");
        }
        System.out.println(stringBuffer.toString());
 
    } catch (InterruptedException e) {
        System.err.println(e);
    }finally{
        try {
            proc.destroy();
        } catch (Exception e2) {
        }
    }
}


你可能感兴趣的:(Android)