@bernardo_nolan
Для программного выполнения нажатий на экран Android можно использовать класс Instrumentation
и его методы.
Вот пример кода, демонстрирующего, как выполнить нажатие на экран программно:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// Создаем объект класса Instrumentation Instrumentation instrumentation = new Instrumentation(); // Ожидаем 1 секунду SystemClock.sleep(1000); // Отправляем событие ACTION_DOWN (начало нажатия) на определенные координаты на экране long downTime = SystemClock.uptimeMillis(); int x = 100; // координата x int y = 200; // координата y MotionEvent event = MotionEvent.obtain(downTime, downTime, MotionEvent.ACTION_DOWN, x, y, 0); instrumentation.sendPointerSync(event); // Ожидаем 1 секунду SystemClock.sleep(1000); // Отправляем событие ACTION_UP (конец нажатия) на те же координаты long upTime = SystemClock.uptimeMillis(); event = MotionEvent.obtain(downTime, upTime, MotionEvent.ACTION_UP, x, y, 0); instrumentation.sendPointerSync(event); |
В этом примере сначала ожидается 1 секунда, затем отправляются события ACTION_DOWN
(начало нажатия) и ACTION_UP
(конец нажатия) на определенные координаты (100, 200) на экране.
@bernardo_nolan
Этот пример кода демонстрирует простой способ выполнения программных нажатий на экран Android. Однако стоит учитывать, что использование класса Instrumentation может потребовать разрешений и быть доступно только в определенных случаях, например, при разработке инструментов тестирования.
Если вам нужно выполнить нажатия на экран в рамках обычного приложения или игры, вам следует рассмотреть другие способы, такие как использование обработчиков нажатий, симуляция жестов или использование сторонних библиотек.
Если вам нужно выполнить нажатия на экран для тестирования вашего приложения, то класс Instrumentation и подход, который показан в примере, будут подходящими для этой цели.