С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/131: Рейтинг темы: голосов - 131, средняя оценка - 4.82
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518

Эмуляция нажатия пальцем

05.10.2013, 03:12. Показов 26010. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Слышал (года 2 назад) что такое возможно.
Не подскажите КАК?
И вообще правда ли это?
Нужен для этого рут?

Тогда только собирал сведения об андроиде и инструментах (только мечтал купить и кодить).
И одним из явных ограничений андроида было невозможность написать автоответчик.
Т.к. невозможно поднять трубку после определения входящего.
Как альтернативу предлагали эмулировать нажатия пальца (под разные звонилки и разрешения монитора) и даже кто-то написал программку для автоподнятия трубки через N секунд в мороз... но найти эту программу в архивах уже не реально...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.10.2013, 03:12
Ответы с готовыми решениями:

Эмуляция нажатия клавиши
Подскажите плс как можна емулировать нажатие клавиши в неактивном окне.

Эмуляция нажатия клавиши
Всем доброго времени суток. Кто может подсказать как сэмулировать нажатие клавиши программно? Именно для моей формы, т.е. нажимаем мушкой...

Эмуляция нажатия клавиш
помогите с кодом разобраться, не работает( Var PWD, Login : String; procedure PressingKeyboard(Key: byte; extra:...

16
 Аватар для Salty_Sugar
26 / 26 / 4
Регистрация: 02.04.2012
Сообщений: 143
05.10.2013, 14:34
Google говорит:
1)
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
view.setOnTouchListener(new OnTouchListener()
{
    public boolean onTouch(View v, MotionEvent event)
    {
        Toast toast = Toast.makeText(
            getApplicationContext(), 
            "View touched", 
            Toast.LENGTH_LONG
        );
        toast.show();
 
        return true;
    }
});
 
 
// Obtain MotionEvent object
long downTime = SystemClock.uptimeMillis();
long eventTime = SystemClock.uptimeMillis() + 100;
float x = 0.0f;
float y = 0.0f;
// List of meta states found here: developer.android.com/reference/android/view/KeyEvent.html#getMetaState()
int metaState = 0;
MotionEvent motionEvent = MotionEvent.obtain(
    downTime, 
    eventTime, 
    MotionEvent.ACTION_UP, 
    x, 
    y, 
    metaState
);
 
// Dispatch touch event to view
view.dispatchTouchEvent(motionEvent);
2)
Java
1
View.performClick();
З.Ы.: Я все знаю! Хитрец! На самом деле вы хотите кликать на рекламки в своем приложении!!!11
2
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
05.10.2013, 20:05  [ТС]
Спасибо! Попробую!

Цитата Сообщение от Salty_Sugar Посмотреть сообщение
Я все знаю! Хитрец! На самом деле вы хотите кликать на рекламки в своем приложении!!!
На самом деле пока просто стадия "понимания" возможностей андроида для программиста.
В основном хочу нажимать на ЧУЖИЕ программы, а не свои.
Часто нужно:
1) Поменять системную настройку пройдя пункты меню, а как это сделать программно не знаю. Например без рут прав установить системное время. Или прописать пароль в WiFi подключение...
2) Хочется сделать свой вариант автоответчика - пустить записанное сообщение в линию через 5 секунд бездействия. Хотя-бы под свое устройство.
3) Хочется сделать дистанционное управление андроидом с компа. Типа TeamView.
4) Хочется сделать "тестер" для моих программ. Поменял математику и... вынужден проделать сотню нажатий для того что-бы убедится что не накроется что-нибудь у клиента после обновления... Одно дело кликать несколько часов, а другое просто наблюдать краем глаза...

Правда нужно еще и отлавливать чужие нажатия, но главное что хотя-бы подобное теоретически возможно.
0
 Аватар для Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
05.10.2013, 20:08
Цитата Сообщение от Tester64 Посмотреть сообщение
4) Хочется сделать "тестер" для моих программ. Поменял математику и... вынужден проделать сотню нажатий для того что-бы убедится что не накроется что-нибудь у клиента после обновления... Одно дело кликать несколько часов, а другое просто наблюдать краем глаза...
Robotium попробуйте.
1
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
05.10.2013, 21:29  [ТС]
Цитата Сообщение от Netscape Посмотреть сообщение
Robotium попробуйте.
Спасибо! Не знал о подобном! Буду тестировать...

Добавлено через 1 час 4 минуты
Цитата Сообщение от Netscape Посмотреть сообщение
Robotium попробуйте.
Эх... Вы подкинули мне новые мысли...
Можно написать сервис, который:
1) узнает какое активити сейчас имеет фокус
2) вызовет в активном окне процедуру по названию
0
 Аватар для Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
05.10.2013, 22:03
Цитата Сообщение от Tester64 Посмотреть сообщение
Можно написать сервис, который:
1) узнает какое активити сейчас имеет фокус
2) вызовет в активном окне процедуру по названию
а смысл ?
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
05.10.2013, 22:18  [ТС]
Цитата Сообщение от Netscape Посмотреть сообщение
а смысл ?
Есть десяток форм. В них десяток кнопок. На каждой свой обработчик. В каждом обработчике запись в лог действий(уже пишу для отладки).
Составляю свой скрип "действий" для тестов на основе лога... и кто его выполнять будет?
Если бы активити/форма была только одна, то можно было бы вызывать OnClick(код кнопки) или OnClik_Key123() или onTouch(xy)
Но если форм несколько, это должен делать некий сервис... или прийдется передавать последовательность действий в каждую форму по очереди их открывания... можно, но кажется сложнее... к тому-же контролировать глобально скорость нажатий (таймер)

Программа уже сильно разраслась и еще планирую еще усложнить раз в 5-10. Писать с нуля "скрипты" как на презинтации Robotium - лень.
0
 Аватар для Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
05.10.2013, 23:05
Цитата Сообщение от Tester64 Посмотреть сообщение
Писать с нуля "скрипты" как на презинтации Robotium - лень.
Ну так Testdroid Recorder используйте. Имхо, писать то, что уже давно написано и отлажено, глупо.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
05.10.2013, 23:59  [ТС]
Цитата Сообщение от Netscape Посмотреть сообщение
Ну так Testdroid Recorder используйте
Не знал. Хорошая идея.
Цитата Сообщение от Netscape Посмотреть сообщение
писать то, что уже давно написано и отлажено, глупо
Согласен! Но я использую Андроид Студию. К тому-же не получилось свое устройство подключить проводами - проблемы китайских гаджетов (проблемы с драйверами и питанием)... Использую WiFi ADB. А это имеет свои "нюансы"... например LogCat без фильтра не читабелен - сообщения посылают около 20 ЧУЖИХ программ и сервисов. Ошибки тоже не возвращаются в среду. Брейкпоинт (дошел до сюда и остановись) не работает. Поэтому скорее всего Testdroid Recorder не заработал бы (у меня)... Вынужден искать/писать "костыли". Когда начинал (прошлой зимой) даже свою альтернативу LogCat написал - через сеть на фиксированый IP посылал строки, а в винде свой программой -сервером ловил... Отказался от него когда после 5й попытки удалось все-таки запустить LogCat... Но учитывая количество глюков в LogCat (не только у меня) возможно стоит довести до ума свой "костыль"...
0
 Аватар для Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
06.10.2013, 00:27
Цитата Сообщение от Tester64 Посмотреть сообщение
К тому-же не получилось свое устройство подключить проводами - проблемы китайских гаджетов (проблемы с драйверами и питанием)
Эмулятор, конечно, не вариант. А android-x86 на VirtualBox не пробовали ?
Цитата Сообщение от Tester64 Посмотреть сообщение
например LogCat без фильтра не читабелен
Он везде без фильтра не читабелен.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
06.10.2013, 05:23  [ТС]
Цитата Сообщение от Netscape Посмотреть сообщение
А android-x86 на VirtualBox не пробовали
Нет. Пробовал только обычный... Он РЕАЛЬНО быстрее??? Сравним с устройством?? Быстрее устройства?
Но тяжело сравнивать разработку под устройство и эмулятор - разные "ощущения". На устройстве ты мыслишь как пользователь, скорость раза в 3 быстрее мышки. Возможен мультитатч. Реальные тормоза отличаешь от "красивостей" отрисовки андроида.
К тому-же с этим глючным андроидом боишься "сглазить" - если работает - лучше не трогать! А то клиент попросит "до завтра" сделать мелочь, а ты даже не догадываешься где инструмент сломался... Вплодь до полной переустановки винды (стандартный эмулятор прячет файлы в системных папках). А на полноценную переустановку винды может уйти от 2х недель(востановление ВСЕХ нужных утилит). Когда-то ради этих "пятиминутных" доработок и повышеной надежности инструмента поставил ВСЕ инструменты на отдельно выделеный эмулятор WinXP - в случае чего эмулятор можно запустить на чужом компе. Сейчас установил на рабочую ОС и боюсь даже ставить левые плагины...
Ненавижу глючные и тормознутые инструменты андроид-программиста - от 35секунд до 1.5 минут на компиляцию даже после изменения 2+2 на 2-2 ... Делфи, 1С, PHP, Foxpro, Html, Javascript - норма от 2x до 10x секунд! То что на Делфи делаю за 2-3 часа на Андроид уходит 10-20... Забываю над чем работал пока дождусь запуска. Уже встроил вибро (и почти музыку) при запуске проекта в отладочном режиме - чтобы узнать что "свершилось" - программа перезапустилась! Все время мечтаю дописать свои "костыли" к андроиду которые ускорят разработку - скриптовый редактор, дизайнер форм прямо в андроде, свой LogCat...
0
marsic
12.10.2013, 22:09
Tester64, у вас получилось сделать имитацию клика? , тоже столкнулся с надобностью данной функции, но пока не выходит.
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
13.10.2013, 17:57  [ТС]
Цитата Сообщение от marsic Посмотреть сообщение
Tester64, у вас получилось сделать имитацию клика? , тоже столкнулся с надобностью данной функции, но пока не выходит.
Нет! Еще не занимался этим... Мне нужно был подтверждение что такое в принципе возможно... Тестирование СВОЕГО проекта пока провожу без нажатий (по другому выкрутился), а нажимать в чужих приложениях попробую не раньше чем через 3-4 месяца (автоответ на звонок, обходим системные защиты эмулируя согласие пользователя их обойти) !
0
 Аватар для verylazy
462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263
13.10.2013, 18:08
Только не ржать! Дикая идея пришла в голову.

Я когда то играл в MUOnline, это такая mmorg. Так вот так сразу игроков была очень популярна программа UOPilot.
Это, насколько я помню, было что-то типа робота для ультимы. Там можно было написать свой скрипт за 5 минут. Мы так на ночь ставили персов на прокачку. Дошли до того что даже после слива персы возвращались из города на споты, хавали банки, юзали магию.
Можно попробовать использовать этот UOPilot.
0
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 5
30.08.2014, 04:25
нужна такая программа которая после того как на экран выйдет определенное слово сделает определенные действия. где найти?
0
535 / 504 / 114
Регистрация: 12.03.2014
Сообщений: 1,671
30.08.2014, 15:10
Сделать самому)
0
0 / 0 / 0
Регистрация: 22.05.2014
Сообщений: 5
31.08.2014, 15:08
как?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.08.2014, 15:08
Помогаю со студенческими работами здесь

Эмуляция нажатия клавиш
Хочу написать программу, что бы она сама выполняла определенные действия клавиатуры за меня. как это возможно сделать?8-)

Эмуляция нажатия ЛКМ
Необходимо, чтобы курсор мыши нажимал левую кнопку в указанных координатах, если перед этим нажатие левой кнопки мыши произошло в...

Эмуляция нажатия кнопок
Хочу сделать l2mult, это программа которая в свернутое окно шлет нажатие клавишь. Тот кто сталкивался, или может хоть немного намекнуть в...

Эмуляция нажатия клавиш
Всем привет! Помогите написать простенькую программу. Что должна делать? Вводим число в Edit (в секндах) должно использоваться через...

Эмуляция нажатия клавиши
Хочу узнать, можно ли в "паскаль АБЦ нэт" осуществить эмуляцию нажатия какой либо клавиши на клавиатуре или мыши, то есть написать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru