Proot замерзает при попытке запустить Linux в Android, используя процесс ScuilderJAVA

Программисты JAVA общаются здесь
Anonymous
Proot замерзает при попытке запустить Linux в Android, используя процесс Scuilder

Сообщение Anonymous »

Я пытаюсь использовать Proot для достижения среды Linux в Android. Я установил TargetSdk на 28, чтобы получить разрешение на execve. Однако, когда я пытаюсь выполнить ProOT через процесс Scuilder, приложение замораживает и не возвращает ни одного вывода.try {
String alpineLinuxPath = getFilesDir().getAbsolutePath() + "/alpine";

String command =
getFilesDir().getAbsolutePath()
+ "/"
+ "proot-android-aarch64.tar"
+ "/"
+ "root"
+ "/"
+ "bin"
+ "/"
+ "proot-userland"
+ " "
+ "-w"
+ " "
+ "/"
+ " "
+ "-r"
+ " "
+ alpineLinuxPath;

List commandArgs = new ArrayList();
StringTokenizer tokenizer = new StringTokenizer(command, " ");
while (tokenizer.hasMoreTokens()) {
commandArgs.add(tokenizer.nextToken());
}

ProcessBuilder processBuilder = new ProcessBuilder(commandArgs);
processBuilder.redirectErrorStream(true);
Process process = processBuilder.start();

BufferedReader reader =
new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
StringBuilder output = new StringBuilder();
while ((line = reader.readLine()) != null) {
output.append(line).append("\n");
}

Log.d("proot", "Executing..");
process.waitFor();
Log.d("proot", output.toString()); // Output is never received
reader.close();

} catch (Exception ignored) {
}
< /code>
Я ожидал, что вывод, такой как "localhost $"
Я ждал некоторое время, но Proot продолжал замораживать. < /p>

Подробнее здесь: https://stackoverflow.com/questions/794 ... essbuilder

Вернуться в «JAVA»