@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) на экране.