Как вставить текст в поле минуя эмуляцию?

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
Банальщина, над которой бьюсь уже третий час.
Ситуация: есть объёмный кусок текста на несколько абзацев, который нужно вставить в поле. Всё. Не получается никак.

Пробовал тремя способами:
1. Эмуляция клавиатуры (с минимальной задержкой).
Всё бы ничего, но из-за известных морганий Memu-инстанса каждые 15-20 секунд текст ломается (тех самых, когда в Project Maker зелёный статус "Готово" над окошком эмулятора сам собой переходит в "Загрузка", а в Memu в этот момент инстанс на несколько секунд чернеет, из-за чего случаются те самые известные пропуски кликов и т.п.). Т.е. в процессе эмуляции набора текста из-за моргания постоянно то перевод строки не поставится, то курсор перемещается внутрь уже напечатанного текста и т.п., и текст в итоге ломается.

2. Кубик "Установить значение" - результат из-за морганий ещё хуже, т.к. набор текста происходит медленнее, и шанс попасть на моргание возрастает.

3. Скопировать переменную с текстом в буфер обмена, дабы потом вставить в поле. Как скопировать в буфер нашёл через System.Windows.Forms.Clipboard.SetText(var) -копируется прекрасно, но вот как вставить? {AndroidKeys.INSERT} не работает как только ни пробовал, {AndroidKeys.PASTE} тоже.

Остаётся вариант передавать внутрь Memu-эмулятора текст сторонними мессенджерами и из них выдирать через copy-paste, но это уже какие-то совсем позорные костыли получаются.

Подскажите, пожалуйста, как быть с такой элементарной задачей?
 
Последнее редактирование:
Регистрация
07.06.2018
Сообщения
15
Благодарностей
3
Баллы
3
У меня так через буфер работает.

var textcr = project.Variables["url"].Value;
System.Windows.Forms.Clipboard.SetText(textcr);
instance.ActiveTab.KeyEvent("v","press","ctrl");//вставить текст из переменной
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
У меня так через буфер работает.

var textcr = project.Variables["url"].Value;
System.Windows.Forms.Clipboard.SetText(textcr);
instance.ActiveTab.KeyEvent("v","press","ctrl");//вставить текст из переменной
я так пробовал - для Droid это не работает, в нем нет классического "инстанса", как в Постере
 
Последнее редактирование:

Deisler

Client
Регистрация
26.10.2019
Сообщения
486
Благодарностей
190
Баллы
43
В дроиде не работал. В зенке бы это решалось кубиком "установить значение", в котором вы качество эмуляции устанавливает своё - минимальное. Иногда, после установки значения, где уровень эмуляции изменен в сторону скорости, нужно добавить клик по полю в которое его установили.
 

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
В дроиде не работал. В зенке бы это решалось кубиком "установить значение", в котором вы качество эмуляции устанавливает своё - минимальное. Иногда, после установки значения, где уровень эмуляции изменен в сторону скорости, нужно добавить клик по полю в которое его установили.
Да, в Постере я бы так и сделал. Но в Дроиде в настройках кубика "Установить значение" эта опция настройки эмуляции отсутствует. Из-за этого текст _вставить_ нельзя, только путём набора, где скорость эмуляции фиксированная, по дефолту довольно медленная и никак не регулируется.
 

Вложения

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 136
Баллы
113
Ситуация: есть объёмный кусок текста на несколько абзацев, который нужно вставить в поле. Всё. Не получается никак.
Попробуйте такой вариант через C#:
C#:
var droid = instance.DroidInstance;
droid.Input.SendText("Отправка текста без задержек");
Также есть способ выключить задержку в кубике Эмуляции клавиатуры, сняв соотв. галку.

84915


PS: Если будет проблема в 2.2.4.0, то попробуйте тестовую 2.2.5.0.
 
Последнее редактирование:

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
Попробуйте такой вариант через C#:
C#:
var droid = instance.DroidInstance;
droid.Input.SendText("Отправка текста без задержек");
Также есть способ выключить задержку в кубике Эмуляции клавиатуры, сняв соотв. галку.
PS: Если будет проблема в 2.2.4.0, то попробуйте тестовую 2.2.5.0.
Не работает.
В случае с C# получаю вот такую ошибку:
84916


А в случае с кубиком Эмуляции клавиатуры, у меня вообще нет таких настроек, как у вас, несмотря на то, что я уже на версии 2.2.5.0 (Droid Lite):
84917
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 136
Баллы
113
А в случае с кубиком Эмуляции клавиатуры, у меня вообще нет таких настроек, как у вас, несмотря на то, что я уже на версии 2.2.5.0 (Droid Lite)
Дроид Лайт 2.2.5.0 вечером будет обновлен.
Нужно будет обновиться и потестирвать в нем.
 

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
Дроид Лайт 2.2.5.0 вечером будет обновлен.
Нужно будет обновиться и потестирвать в нем.
Спасибо, а где можно следить за обновлениями этой тестовой версии и откуда её можно будет скачать? В предыдущий раз мне ссылку предоставлял в личку кто-то из админов.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 136
Баллы
113
  • Спасибо
Реакции: blamingas

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 136
Баллы
113
Спасибо, а где можно следить за обновлениями этой тестовой версии и откуда её можно будет скачать? В предыдущий раз мне ссылку предоставлял в личку кто-то из админов.
Отправлю сейчас ссылку вам в личку.
 
  • Спасибо
Реакции: blamingas

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
спасибо, после обновления попробую
 
  • Спасибо
Реакции: Sergodjan

Deisler

Client
Регистрация
26.10.2019
Сообщения
486
Благодарностей
190
Баллы
43
Да, в Постере я бы так и сделал. Но в Дроиде в настройках кубика "Установить значение" эта опция настройки эмуляции отсутствует. Из-за этого текст _вставить_ нельзя, только путём набора, где скорость эмуляции фиксированная, по дефолту довольно медленная и никак не регулируется.
Ага, не в курсе особенностей дроида. На сколько я помню в постере можно было добавить кубик, который менял уровень эмуляции. Если в дроиде есть такой кубик, то добавить его с максимумом скорости, потом вставить текст, потом клик по строке куда вставляли текст и кубик, который возвращает уровень эмуляции на место.

Ну или ждать обновление, которое вам пообещали уже сегодня)
 
  • Спасибо
Реакции: blamingas

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Ага, не в курсе особенностей дроида. На сколько я помню в постере можно было добавить кубик, который менял уровень эмуляции. Если в дроиде есть такой кубик, то добавить его с максимумом скорости, потом вставить текст, потом клик по строке куда вставляли текст и кубик, который возвращает уровень эмуляции на место.

Ну или ждать обновление, которое вам пообещали уже сегодня)
Прикольно ты отвечаешь ;-) надо взять этот уровень флуда на вооружение :-)
 

blamingas

Client
Регистрация
14.05.2021
Сообщения
114
Благодарностей
45
Баллы
28
Попробуйте такой вариант через C#:
C#:
var droid = instance.DroidInstance;
droid.Input.SendText("Отправка текста без задержек");
Также есть способ выключить задержку в кубике Эмуляции клавиатуры, сняв соотв. галку.

Посмотреть вложение 84915

PS: Если будет проблема в 2.2.4.0, то попробуйте тестовую 2.2.5.0.
Отписываю по обновлению версии Дроида - оба этих метода теперь работают успешно. Текст вставляется. Благодарю за помощь!
 
  • Спасибо
Реакции: Deisler и Sergodjan

Biobalans

Client
Регистрация
28.02.2021
Сообщения
75
Благодарностей
4
Баллы
8
Отписываю по обновлению версии Дроида - оба этих метода теперь работают успешно. Текст вставляется. Благодарю за помощь!
Можешь поделиться обновленной версией?
 

Biobalans

Client
Регистрация
28.02.2021
Сообщения
75
Благодарностей
4
Баллы
8
Дроид Лайт 2.2.5.0 вечером будет обновлен.
Нужно будет обновиться и потестирвать в нем.
А обновление Дроид Демо версии 2.2.5.0 есть? До этого пользовался купленной Pro 2.2.4.0, но её срок истёк вчера, неожиданно для меня. Сейчас ищу временные варианты для продолжения работы.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 136
Баллы
113
А обновление Дроид Демо версии 2.2.5.0 есть? До этого пользовался купленной Pro 2.2.4.0, но её срок истёк вчера, неожиданно для меня. Сейчас ищу временные варианты для продолжения работы.
При истекшем оплаченном периоде полнофункциональной версией 2.2.5.0 не получится воспользоваться.
Но можете воспользоваться Демо версией 2.2.5.0.
 

Кто просматривает тему: (Всего: 7, Пользователи: 0, Гости: 7)