Отправка текста в эмулятор на Кириллице через ADB

Ruhas

Client
Регистрация
26.11.2019
Сообщения
791
Реакции
197
Баллы
43
Всем доброго времени. Уже третий день бьюсь над этой проблемой. Не могу отправить текст в эмулятор на кириллице. Смотрел темы "
Автоматизация Android 1/2 .. Варианты с темы тоже не работают, замучил чат GPT, он тоже сдался.

Подскажет/покажет кто-то как это сделать? Как передать кириллицу в эмулятор Нокс. Я знаю что ADB не передает символы на кириллице, но как сделать что бы передавал??
 
ZD может в кириллицу.
 
Последнее редактирование:
Чем конкретно не подходит?
Дополнительно к нему пробовали другую клавиатуру?
1) На ЗД регистрация идет хуже чем на Ноксе, как на Мему так и на реальных устройствах.
2) Пробовал другую клавиатуру, apk долго устанавливается, если мы говорим о ADBKeyboard
По этому интересен способ передачи без приложений.
 
2) Пробовал другую клавиатуру, apk долго устанавливается, если мы говорим о ADBKeyboard
Образ можно заготовить заранее, но это вручную и 1 раз для конкретной ОС.
1) На ЗД регистрация идет хуже чем на Ноксе, как на Мему так и на реальных устройствах.
На ЗД Ent с Ноксом?
 
Попробуйте с ноксом, иначе непонятно, что мы обсуждаем в разделе данного продукта...
Да не нужен Интерпрайз. Обсуждаем то что в шапке топика. Нужно решение для Нокса (не важен эмулятор, ADB для всех не передает кириллицу) ЗД пока не интересен.
 
ADB для всех не передает кириллицу)
А что он на выходе передает? Где пример? Как вам помочь если нету примера текста. И какой должен быть ваш ожидаемый результат в итоге?
 
А что он на выходе передает? Где пример? Как вам помочь если нету примера текста. И какой должен быть ваш ожидаемый результат в итоге?
Ну допустим я хочу решить капчу в ВК? Ну возьмём слово "Привет" Результат нужно взять из переменной, если слово такого плана "Privet" то оно вводиться, а если на кириллице то нет. Есть варианты из некоторых тем, но они не работают.
 
Вот как вариант:

C#:
Развернуть Свернуть Копировать
string text = project.Variables["test"].Value; // в переменной Text
Encoding utf8 = Encoding.GetEncoding("ISO-8859-1");
Encoding win1251 = Encoding.GetEncoding("UTF-8");
byte[] utf8Bytes = win1251.GetBytes(text);
byte[] win1251Bytes = Encoding.Convert(win1251, utf8, utf8Bytes);
return win1251.GetString(win1251Bytes); //
Но в переменной получается вот так: "??????"
 
Вот как вариант:

C#:
Развернуть Свернуть Копировать
string text = project.Variables["test"].Value; // В переменной Text значение Привет
Encoding utf8 = Encoding.UTF8; // Правильная кодировка для UTF-8
Encoding win1251 = Encoding.GetEncoding("Windows-1251"); // Правильная кодировка для Windows-1251
byte[] utf8Bytes = utf8.GetBytes(text);
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);
return win1251.GetString(win1251Bytes); //На выходе получаем все тот же Привет и не каких ?????

у вас
byte[] win1251Bytes = Encoding.Convert(win1251, utf8, utf8Bytes);

у меня
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);

120259


120260


и выполнив мой код

120261


вот и все.
 
Последнее редактирование:
  • Спасибо
Реакции: ZX
C#:
Развернуть Свернуть Копировать
string text = project.Variables["test"].Value; // В переменной Text значение Привет
Encoding utf8 = Encoding.UTF8; // Правильная кодировка для UTF-8
Encoding win1251 = Encoding.GetEncoding("Windows-1251"); // Правильная кодировка для Windows-1251
byte[] utf8Bytes = utf8.GetBytes(text);
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);
return win1251.GetString(win1251Bytes); //На выходе получаем все тот же Привет и не каких ?????

у вас
byte[] win1251Bytes = Encoding.Convert(win1251, utf8, utf8Bytes);

у меня
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);

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

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

и выполнив мой код

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

вот и все.
Да, но он так-же не передается на эмулятор.
 
C#:
Развернуть Свернуть Копировать
string text = project.Variables["test"].Value; // В переменной Text значение Привет
Encoding utf8 = Encoding.UTF8; // Правильная кодировка для UTF-8
Encoding win1251 = Encoding.GetEncoding("Windows-1251"); // Правильная кодировка для Windows-1251
byte[] utf8Bytes = utf8.GetBytes(text);
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);
return win1251.GetString(win1251Bytes); //На выходе получаем все тот же Привет и не каких ?????

у вас
byte[] win1251Bytes = Encoding.Convert(win1251, utf8, utf8Bytes);

у меня
byte[] win1251Bytes = Encoding.Convert(utf8, win1251, utf8Bytes);

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

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

и выполнив мой код

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

вот и все.
120264
 
увы эмуляторами, дроидами не пользуюсь
Дело в том что ADB не передает в кириллице. Вот задача его обмануть. Пробовал закодировать в UTF-8 тоже не подхватывает..
 
Вот этот сниппет не пробовали?

Такой еще вариант есть:
Код:
Развернуть Свернуть Копировать
a.Command("am broadcast -a ADB_INPUT_B64 --es msg '"текст в base64"'", true);
 
Вот этот сниппет не пробовали?

Такой еще вариант есть:
Код:
Развернуть Свернуть Копировать
a.Command("am broadcast -a ADB_INPUT_B64 --es msg '"текст в base64"'", true);
Этот вариант я так понимаю для ADBKeyboard клавиатуры. Но к сожалению приложение не устанавливается быстро, а зависает. По этом ADBKeyboard отпадает..
 
Этот вариант я так понимаю для ADBKeyboard клавиатуры. Но к сожалению приложение не устанавливается быстро, а зависает. По этом ADBKeyboard отпадает..
пробуйте - https://zenno.club/discussion/threa...oid-bez-posrednikov-chast-1.79012/post-670997
и вот пишут что получилось все - https://zenno.club/discussion/threa...oid-bez-posrednikov-chast-1.79012/post-690166
ответ - https://zenno.club/discussion/threa...oid-bez-posrednikov-chast-2.92679/post-683190
и вот ответ, обновите библиотеку и все должно работать - https://zenno.club/discussion/threa...oid-bez-posrednikov-chast-2.92679/post-621342
 
Последнее редактирование:
  • Спасибо
Реакции: Ruhas

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