我想重新啓動我的Android設備(做Android的移植)進行測試。Android運行時命令問題
我的代碼:
try {
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("reboot");
InputStream is = proc.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
while ((line = br.readLine()) != null) {
Log.i("runtime","line : " + line);
}
} catch (Throwable t) {
t.printStackTrace();
}
但設備未重啓。
如果我改變命令
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("ls");
它運行良好,顯示所有目錄。
當我在adb shell中輸入「reboot」時,它也起作用。爲什麼???
重新啓動只是工具箱命令之一,我也運行其他命令,可以從shell工作。 但是,除了'ls'之外,它們都不能從rt.exec工作。 有人能告訴我如何使它從android運行時工作? 感謝
殼也許是可行的,因爲你有一個root shell。如果您在非root用戶的shell中執行此操作: $ reboot reboot:操作不允許 – 2011-06-09 09:12:12