Перезагрузка в Recovery Android - PullRequest
1 голос
/ 18 августа 2011

Мне наконец-то удалось заставить работать код перезагрузки. Я использовал следующий код:

        Runtime runtime = Runtime.getRuntime();
        Process proc = null;
        OutputStreamWriter osw = null;
        StringBuilder sbstdOut = new StringBuilder();
        StringBuilder sbstdErr = new StringBuilder();

        String command="/system/bin/reboot";

        try { // Run Script

            proc = runtime.exec("su");
            osw = new OutputStreamWriter(proc.getOutputStream());
                                osw.write(command);
                    osw.flush();
            osw.close();

        } catch (IOException ex) {
            ex.printStackTrace();
        } finally {
            if (osw != null) {
                try {
                    osw.close();
                } catch (IOException e) {
                    e.printStackTrace();                    
                }
            }
        }
        try {
            if (proc != null)
                proc.waitFor();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        sbstdOut.append(ReadBufferedReader(new InputStreamReader(proc
                .getInputStream())));
        sbstdErr.append(ReadBufferedReader(new InputStreamReader(proc
                .getErrorStream())));
        if (proc.exitValue() != 0) {
                    }

Теперь мне нужен код, который перезагрузит устройство в режим восстановления. Приложение будет только для Samsung Galaxy S. Я не нашел кода для перезагрузки в рекавери, есть ли способ перезагрузиться в рекавери через код?

Ответы [ 2 ]

1 голос
/ 14 сентября 2011

Почему вы не используете:

((PowerManager) getSystemService (Context.POWER_SERVICE)). Reboot ("recovery");

?http://developer.android.com/reference/android/os/PowerManager.html#reboot%28java.lang.String%29

1 голос
/ 18 августа 2011

Если версия команды перезагрузки и бэкэнд, который она вызывает на этом устройстве, ее поддерживает, это может сработать:

String command="/system/bin/reboot recovery";

Понимайте, конечно, что в ту минуту, когда вы используете программу su, с которой вы играете, не поддерживаетсямодификации андроида.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...