Android应用程序获取ROOT权限的方法(android中如何通过代码检测是否有root权限?)

来源:互联网 发布:c s结构网络模型 编辑:程序博客网 时间:2024/06/05 00:50
 private boolean isRoot(String command){Process process = null;  DataOutputStream os = null;  try {  /*Executes the specified program in a separate native process.  * The new process inherits the environment of the caller. * Calling this method is equivalent to calling exec(prog, null, null). *///如果设备获取了root权限,那么程序执行su命令时,就会提示用户进行授权process = Runtime.getRuntime().exec("su"); os = new DataOutputStream(process.getOutputStream());  os.writeBytes(command+"\n");  os.writeBytes("exit\n");  os.flush(); process.waitFor();   } catch (Exception e) {   //如果已经root,但是用户选择拒绝授权,e.getMessage() = write failed: EPIPE (Broken pipe) //如果没有root,,e.getMessage()= Error running exec(). Command: [su] Working Directory: null Environment: null Logger.d("Unexpected error - Here is what I know: "+e.getMessage());   return false;   }   finally {  try {   if (os != null) {  os.close();   }   process.destroy();  } catch (Exception e) {  // nothing  }  }  return true; }


	
				
		
原创粉丝点击