Android Runtime.getRuntime().exec("su")java.io.IOException:权限被拒绝

Gui*_*iYQ 5 android exception

当我使用这段代码时:

process = Runtime.getRuntime().exec("su");
os = new DataOutputStream(process.getOutputStream());
Run Code Online (Sandbox Code Playgroud)

总有一个错误,任何想法?在Android虚拟设备上运行

W/System.err(3211): java.io.IOException: Error running exec(). Command: [su] Working Directory: null Environment: null
W/System.err(3211):     at java.lang.ProcessManager.exec(ProcessManager.java:211)
W/System.err(3211):     at java.lang.Runtime.exec(Runtime.java:174)
W/System.err(3211):     at java.lang.Runtime.exec(Runtime.java:247)
W/System.err(3211):     at java.lang.Runtime.exec(Runtime.java:190)
W/System.err(3211):     at com.example.executeandroidtest.ShellUtils.execCommand(MainActivity.java:661)
W/System.err(3211):     at com.example.executeandroidtest.MainActivity$3.run(MainActivity.java:410)
W/System.err(3211):     at java.lang.Thread.run(Thread.java:818)
W/System.err(3211): Caused by: java.io.IOException: Permission denied
W/System.err(3211):     at java.lang.ProcessManager.exec(Native Method)
W/System.err(3211):     at java.lang.ProcessManager.exec(ProcessManager.java:209)
W/System.err(3211):     ... 6 more
Run Code Online (Sandbox Code Playgroud)

Ant*_*wan -2

您是否尝试过添加此权限

<uses-permission android:name="android.permission.ACCESS_SUPERUSER"/>
Run Code Online (Sandbox Code Playgroud)

  • 我已经添加了这个,但仍然是这个问题。 (7认同)