Android应用程序获取ROOT权限的方法(android中如何通过代码检测是否有root权限?)
16lz
2022-05-28
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; }
更多相关文章
- Android通过内容提供器获取相册中所有图片
- Android(安卓)获取当前语言的方法1
- android获取mac地址方法
- Android(安卓)获取以太网Mac地址和IP地址
- android点滴3
- Android中获取电池电量
- 【android】getCacheDir()、getFilesDir()、getExternalFilesDir
- 在android中获取系统后台运行的进程
- Android(安卓)3G网络下 http refused 解决办法