Android: команда Runtime.getRuntime().exec (строка) выполняется слишком медленно? или я делаю что-то не так?

#java #android #runtime

#java #Android #время выполнения

Вопрос:

Я пытаюсь создать приложение, которое я использую для удаленного управления устройством Android (телевизором). На самом деле я сделал это, однако, когда я нажимаю кнопку на устройстве контроллера (мобильном), для выполнения работы на устройстве (телевизоре), которым я хочу управлять, требуется около 1 секунды.

Когда я проверил все журналы в коде и увидел, что этот метод тратит столько времени…

     String commandStr;
    commandStr = String.format("%s"," input keyevent " keyCode);

    try {
        process = runTimeExec(commandStr);
        runTimeExec(commandStr);
    } catch (IOException e) {
    }
  

И runTimeExec определяется как;

     public static Process runTimeExec(String commandStr) throws IOException {  
           Runtime.getRuntime().exec(commandString);

    }
  

Я просто хочу узнать, есть ли какое-либо другое решение для немедленного запуска команды на самом телевизионном устройстве? Или как я могу ускорить этот код здесь?

Ответ №1:

Для этой цели я использовал код getevent / sendevent. Это очень быстро и сразу работает на телевизионном устройстве. Просто попробуйте. Подробную документацию вы можете найти в https://source.android.com