Имитация пользовательского ввода - PullRequest
1 голос
/ 01 июня 2011

Можно ли имитировать пользовательский ввод в Android?

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

или, может быть, если какой-то текст редактирования имеет фокус и начинается симуляция нажатия клавиш, текст редактирования должен быть заполнен некоторым текстом. , .

Я уверен, что это можно сделать в .Net или Java, но я не знаю, возможно ли это в Android

Ответы [ 2 ]

1 голос
/ 27 января 2015

Из документации по службам обеспечения доступности зданий :

Начиная с Android 4.0 (API Level 14), службы доступности могут действовать от имени пользователей, включая изменение фокуса ввода ивыбор (активация) элементов пользовательского интерфейса.В Android 4.1 (уровень API 16) диапазон действий был расширен за счет включения прокрутки списков и взаимодействия с текстовыми полями.Службы специальных возможностей могут также выполнять глобальные действия, такие как переход на главный экран, нажатие кнопки «Назад», открытие экрана уведомлений и списка последних приложений.

(...)

Для того, чтобыДля выполнения действий от имени пользователей ваша служба специальных возможностей должна register получать события от нескольких или нескольких приложений и запрашивать разрешение на просмотр содержимого приложений, задав для android:canRetrieveWindowContent значение true в service configuration file. * 1014.*

Подробнее см. В связанной документации.

1 голос
/ 01 июня 2011

Можно ли имитировать пользовательский ввод в Android?

Только из набора модульных тестов.Я не так, как вы думаете, это будет огромная дыра в безопасности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...