IOException - su-Shell

K

kunkka

Neues Mitglied
0
Moin moin,

ich habe einen Post gefunden, wo mithilfe folgenden Codes ein Test auf root-Rechte ausgeführt wurde:

Code:
Process p;  
        	try {  
        	    // Preform su to get root privledges  
        	    p = Runtime.getRuntime().exec("su");   
        	    // Attempt to write a file to a root-only  
                    DataOutputStream os = new DataOutputStream(p.getOutputStream());  
                    os.writeBytes("echo \"Do I have root?\" >/system/sd/temporary.txt\n");  
        		  
        	     // Close the terminal  
        	     os.writeBytes("exit\n");  
        	     os.flush();  
            	     try {  
        	         p.waitFor();  
        		 if (p.exitValue() != 255) { 
        		     // TODO Code to run on success 
                         }

Ich bekomme jedoch trotz root-Rechte eine IOException auf meinem Smartphone - auf dem Xoom hingegen läuft es. Andere Root-Applikationen laufen problemlos.

Woran könnte das liegen?

MfG,
kunkka
 
Ich vermute mal, auf deinem Smartphone gibt es das Verzeichnis (oder den Link) /system/sd nicht.
Und Root-Rechte heißt auch nicht automatisch, dass du auf der System-Partition schreiben darfst.

Dazu muss auf jeden Fall ein Remount her und je nach Gerät sogar noch im Bootloader Security OFF (S-OFF) gepatcht/geflasht werden.
 
solche Fehler siehste dann in stdout bzw. stderr (Process.getOutputStream()).
IOException fliegt wohl wegen dem p.waitFor(), vll. weil der Process davor schon beendet ist?
 
Das steht doch in der Exception, wo die genau fliegt.
Muss man nur im Stacktrace nachlesen.
 

Ähnliche Themen

A
Antworten
10
Aufrufe
1.006
swa00
swa00
GvGHunter
Antworten
4
Aufrufe
779
GvGHunter
GvGHunter
J
Antworten
0
Aufrufe
685
JoEntwickler
J
Zurück
Oben Unten