Команда «Выполнить оболочку» не работает в Android 7 - PullRequest
0 голосов
/ 18 октября 2018

Мне нужно выполнить некоторые команды оболочки в приложении.Этот код отлично работает в Android 5, но не в Android 7. Отладочный вывод: process: Process[pid=13559, hasExited=true, exitcode=1].Поток ошибок: Permission denied.Как я могу заставить его работать во всех версиях Android?Есть ли какие-либо изменения в Android между версиями 5-7, которые отключают запуск команд оболочки?Код:

try {
    Process process = Runtime.getRuntime().exec("ls -l");

    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));

    char[] buffer = new char[5000];
    int numRead;
    while ((numRead = bufferedReader.read(buffer)) > 0) {
        commandOutput.append(buffer, 0, numRead);
    }

    bufferedReader.close();
    process.waitFor();
}
catch (IOException | InterruptedException e) {
    e.printStackTrace();
}

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