Я не помню другого пути.
рабатываю свой первыйAndroid
приложение, и мне любопытно, есть ли какие-либо "стандартные" способы выполнения привилегированныхshell
команды. Я только смог найти один способ сделать это, выполнивsu
и затем добавив мои командыstdin
изsu
процесс.
DataOutputStream pOut = new DataOutputStream(p.getOutputStream());
DataInputStream pIn = new DataInputStream(p.getInputStream());
String rv = "";
// su must exit before its output can be read
pOut.writeBytes(cmd + "\nexit\n");
pOut.flush();
p.waitFor();
while (pIn.available() > 0)
rv += pIn.readLine() + "\n";
Я читал об упаковке привилегированных (superuser
) звонит вJNI
: Это возможно? Если так, то как можно это сделать? Кроме этого, есть ли другие способы вызова привилегированных инструкций изJava
?