Способы ввода (PM ZD)
Пожалуйста, ознакомьтесь с Правилами использования материалов на данном ресурсе
В программе есть 4 способа ввода символов с клавиатуры
Ввод символов по-разному работает на разных устройствах, поэтому даем вам возможность самостоятельно подобрать оптимальный. Первые три способа позволяют вводить любые символы, включая эмодзи.
ADBKeyboard.
AccessibilityService.
Native input + Clipboard.
Input text.
Технические подробности:
ADBKeyboard. Используется сторонняя клавиатура. Автоматически устанавливается при подключении к устройству. Позволяет вводить символы, как если бы их набирали на виртуальной клавиатуре.
AccessibilityService. Используется uiautomator2. Позволяет задать любое значение полю, которое находится в фокусе. По своей сути не является вводом символов, а просто меняет у поля свойство Text на нужное значение. Не будет работать в приложениях, в которых отсутствует стандартное дерево элементов, например, в играх.
Native input + Clipboard. Ввод символов осуществляется напрямую через интерфейс IInputManager и IClipboard. Ввод кириллицы/эмодзи возможен только на Android 7 и выше, ASCII - на любых устройствах. Работает достаточно быстро.
Input text - аналог команды input text + добавлены все необходимые преобразования текста для корректного ввода спецсимволов ( < > | ) ( и прочих). Позволяет вводить только ASCII символы. Посимвольный ввод работает довольно медленно, поэтому лучше выбирать тип ввода с отключенной галочкой «задержка».