Note that there are some explanatory texts on larger screens.

plurals
  1. POGetting result of executed shell command fails/hangs
    primarykey
    data
    text
    <p>I try to execute shell commands, this does work as it should. Even the result comes back (as is see on LogCat). The problem ist the last line of the result. Every time a readLine() on the last line occurs (which shouldn't occur, temp should be null), the app hangs forever and doesn't come back from the readLine call. Maybe you find the error. I tried readUTF and standart read(), all the same problem. And yes, the app got su-rights.</p> <pre><code>try { Process process = Runtime.getRuntime().exec("su"); DataOutputStream os = new DataOutputStream(process.getOutputStream()); DataInputStream osRes = new DataInputStream(process.getInputStream()); for (String single : commands) { os.writeBytes(single + "\n"); os.flush(); String temp = new String(); while( (temp = osRes.readLine()) != null) { Log.v("NITRO", temp); result2 += temp + "\n"; } } os.writeBytes("exit\n"); os.flush(); process.waitFor(); } catch (IOException e) { Toast.makeText(Main.this, "Error", Toast.LENGTH_LONG); } catch (InterruptedException e) { Toast.makeText(Main.this, "Error", Toast.LENGTH_LONG); } </code></pre> <p>That is the StackTrace where it hangs when i stop debugger when hanging:</p> <pre><code>OSFileSystem.readImpl(int, byte[], int, int) line: not available [native method] OSFileSystem.read(int, byte[], int, int) line: 118 ProcessManager$ProcessInputStream(FileInputStream).read(byte[], int, int) line: 312 ProcessManager$ProcessInputStream(FileInputStream).read() line: 250 DataInputStream.readLine() line: 309 Main$2$1.run() line: 84 ViewRoot(Handler).handleCallback(Message) line: 587 ViewRoot(Handler).dispatchMessage(Message) line: 92 Looper.loop() line: 123 ActivityThread.main(String[]) line: 4627 Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method] Method.invoke(Object, Object...) line: 521 ZygoteInit$MethodAndArgsCaller.run() line: 868 ZygoteInit.main(String[]) line: 626 NativeStart.main(String[]) line: not available [native method] </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload