Я хочу ввести программное событие «введите» из моего приложения.Невозможно ввести «ввод» ключевого события из моего приложения android
Я пробовал это с помощью команды abd shell, а также с помощью AccessibilityService, но не нашел в этом никакой удачи.
Similar question was asked here as well
Ниже приведен код, который я использовал, чтобы выполнить команду оболочки ADB:
try {
Runtime runtime = Runtime.getRuntime();
Process p = runtime.exec("input keyevent 66");
BufferedReader standardIn = new BufferedReader(new InputStreamReader(p.getInputStream()));
BufferedReader errorIn = new BufferedReader(new InputStreamReader(p.getErrorStream()));
String output = "";
String line;
while ((line = standardIn.readLine()) != null) {
output += line + "\n";
}
while ((line = errorIn.readLine()) != null) {
output += line + "\n";
}
Log.d("output", "" + output);
} catch (IOException e) {
e.printStackTrace();
}
Я получаю следующий вывод:
sh: resetreason: can't execute: Permission denied
Кто-то пожалуйста, помогите мне.
Если кто-то знает, как его достичь, используя AccessibilityService, пожалуйста, дайте мне знать.
Заранее благодарен!
Добавлено вышеупомянутое разрешение, но все равно бросает такую же ошибку вывода. – Wazz
Я думаю, что вышеупомянутое разрешение и приведенный выше код будут работать только на корневых устройствах. – Wazz