Я создаю метод следующим образом:
private boolean createAvd(Account account) throws InterruptedException, IOException {
boolean isCreated = true;
InputStreamReader inputStreamReader = null;
String commandToCreate ="echo no | avdmanager create avd -n "+account.getId()+" -k "+SYSTEM_IMAGE+"";
ProcessBuilder processBuilder = new
ProcessBuilder("avdmanager.bat " , commandToCreate );
processBuilder.directory(new File(PATH_AVD_MANAGER));
java.util.List<String> list =processBuilder.command();
for (String string : list) {
System.out.println("Command : "+ string);
}
Process process = processBuilder.start();
process.waitFor(20, TimeUnit.SECONDS);
if(process.exitValue() == 0) {
inputStreamReader = new InputStreamReader(process.getInputStream());
}else {
inputStreamReader = new InputStreamReader(process.getErrorStream());
isCreated = false;
}
System.out.println("The exit excute value is :"+ process.exitValue());
BufferedReader input = new BufferedReader(inputStreamReader);
String line = null;
try {
while ((line = input.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
isCreated = false;
}
return isCreated;
}
, и когда я запускаю код, я получаю эту ошибку:
Команда: avdmanager.bat Команда: эхо нет | avdmanager create avd -n 15068894 -k "system-images; android -23; google_apis; x86" Выходное значение: 255 Синтаксис команды неверен. не удалось создать AVD
следующая команда:
echo no | avdmanager create avd -n 15068894 -k "system-images;android-23;google_apis;x86"
работает нормально и создает avd, но метод не может создать avd
echo no для ответа на вопрос avdmanager Do you wish to create a custom hardware profile? [no]
Может кто-нибудь сказать мне, что я пропустил?