← Все гайды 📱 Подготовка устройств

Агент ввода Siesta (IME и accessibility)

Зачем нужен агент-помощник ввода, как поставить его кнопкой «Инициализировать агент» и что делать, если он не включается

Siesta - это небольшое Android-приложение, которое Lusiesta Studio ставит на телефоны фермы. Оно работает сразу в двух ролях: как клавиатура ввода и как служба специальных возможностей. Без него часть автоматизации становится ненадёжной, а задачи прогрева и публикации вообще не стартуют. Ниже - что это такое, как поставить агент и как убедиться, что он действительно включился.

Что такое агент Siesta

Агент - это отдельный APK с идентификатором пакета com.siesta.fastinput. Внутри у него две части:

  • Клавиатура ввода (IME) - системный метод ввода, через который приложение печатает текст в поля на телефоне.
  • Служба специальных возможностей (accessibility) - через неё агент читает дерево элементов экрана, чтобы сценарии находили кнопки, а не били вслепую по координатам.

Права root агенту не нужны нигде. В установщик Lusiesta Studio APK не входит: он скачивается с сервера по требованию, перед установкой проверяется криптографической подписью и хранится на компьютере в зашифрованном виде. Подложить вместо него свой файл нельзя - APK без валидной подписи не будет установлен.

Зачем он нужен

  • Надёжный ввод текста. Системные клавиатуры у всех разные: раскладки, автозамена, подсказки, свои всплывающие панели. Агент даёт предсказуемый ввод описаний, тегов и комментариев.
  • Чтение экрана. Сценарии опираются на дерево интерфейса, поэтому работают на разных прошивках и на клонах приложений, где идентификаторы элементов меняются.
  • Второй движок превью. Кроме трансляции по H.264 приложение умеет показывать экран через захват средствами самого агента (кадры собираются на телефоне и отдаются в JPEG). Этот режим выручает на телефонах, где аппаратное кодирование видео падает. В настройках он подписан как «APK»: «Настройки», вкладка «Интерфейс», раздел «Сетка», параметр «Режим стриминга» со значениями «Авто», «APK», «H.264».

Перед задачами прогрева и публикации приложение проверяет агента заранее, чтобы не гонять сценарий впустую. Если агента нет, задача сразу завершается ошибкой: «Агент не установлен на устройстве. Откройте главное меню и нажмите «Инициализировать агент», затем запустите задачу заново.»

Как установить агент

  1. Подключите телефон по USB и дождитесь, пока он появится в сетке на странице «Главная». Если устройства не видно, сначала разберитесь с подключением: Подключение телефона по ADB.
  2. Выделите нужные устройства кликом по карточкам. Если подключён ровно один телефон, выделять ничего не нужно - приложение возьмёт его само. Если телефонов несколько, а выделения нет, появится подсказка «Выберите устройство (кликните по карточке) - подключено несколько.»
  3. В правой панели «Быстрые действия» нажмите кнопку «Инициализировать агент» (подпись под ней - «Подготовить помощник»).
  4. Дождитесь в логе устройства зелёной строки со сводкой состояния - вида «агент установлен v6, спец-возможности включены, клавиатура активна». Красная строка («агент НЕ установлен», «спец-возможности ВЫКЛЮЧЕНЫ») означает, что установка не прошла, и рядом будет написано почему. Инициализация идёт параллельно на всех выделенных телефонах.

Что происходит под капотом: приложение сбрасывает локальный кэш и берёт с сервера свежий APK, ставит его поверх старого, а если старая версия не даёт обновиться - удаляет её и ставит начисто. Затем агенту выдаётся системное разрешение на изменение защищённых настроек, после чего он включает свою службу специальных возможностей и клавиатуру сам. Дополнительно клиент включает клавиатуру Siesta и добавляет службу агента в список включённых, не затирая уже включённые чужие службы.

Инициализация требует связи с сервером и активного входа в аккаунт: APK физически не лежит внутри установщика. Без интернета вы получите «Не удалось получить агент с сервера - нужен онлайн-вход.» Поэтому агент удобно раскатывать на всю ферму сразу, пока связь есть.

Что может спросить телефон

На большинстве прошивок нажимать на телефоне ничего не нужно, агент включает себя сам. Возможные исключения:

  • Строгие прошивки (например, OPPO, Vivo, Xiaomi) часто запрещают включать специальные возможности программно. Тогда доступ придётся подтвердить руками на экране телефона - один раз.
  • Смена клавиатуры. Siesta становится активным методом ввода. Для рабочего телефона фермы это нормально: им управляет автоматика, а не человек.
  • Запрос на запись экрана. Если превью идёт в режиме захвата, при старте появляется системное окно с кнопкой «Начать», «Start now» или «Разрешить». Приложение ищет эту кнопку в дереве интерфейса и нажимает само, но окно на разных версиях Android выглядит по-разному, поэтому иногда согласие проще подтвердить вручную. Если картинки нет вообще, смотрите статью Нет превью телефонов.

Как понять, что агент работает

  1. Выделите устройство и нажмите в «Быстрых действиях» кнопку «Открыть агент» - на телефоне откроется экран приложения Siesta.
  2. На экране два индикатора: «Спец-возможности» и «Клавиатура ввода». Оба должны гореть зелёным, а статус сверху - «Подключено · всё работает».
  3. Статус «Подключаюсь автоматически…» означает, что разрешение выдано и агент включает себя сам. Подождите пару секунд и посмотрите снова.
  4. Статус «Нужно включить» означает, что автоматика не прошла: нажмите на телефоне кнопку «Включить вручную», найдите в открывшемся системном списке Siesta и подтвердите доступ.

Второй способ проверки - боевой: запустите короткую задачу (например, прогрев на несколько минут) и посмотрите страницу «Логи». Если агента нет или ему не выдан доступ, задача не начнётся, а в результате будет прямая подсказка, что именно сделать.

Если агент не ставится или не включается

  • «Не удалось получить агент с сервера» - проверьте интернет и вход в аккаунт, затем повторите инициализацию.
  • Установка обрывается, телефон отваливается в процессе - почти всегда это питание или кабель, а не агент. Разбор в статье USB-кабели: почему на них нельзя экономить.
  • Агент установлен, но индикаторы не горят - откройте Siesta на телефоне и нажмите «Включить вручную». Там же есть кнопка «Настройки приложения», через неё удобно снять ограничения прошивки.
  • Служба выключается сама через время - это работа энергосбережения. Добавьте Siesta в исключения автозапуска и оптимизации батареи, потом прогоните инициализацию заново.
  • Задача пишет, что агенту не выдан доступ к спец-возможностям - решение то же: открыть Siesta на телефоне, «Включить вручную», подтвердить доступ, запустить задачу заново.

Если ничего не помогает, снимите отчёт об ошибке прямо из задачи: в бандл попадают снимок экрана и дерево интерфейса на момент сбоя, по ним видно, на каком именно шаге всё встало.

Когда переустанавливать агент

Кнопка «Инициализировать агент» всегда тянет свежую версию с сервера, поэтому её полезно нажимать: после обновления клиента, после сброса телефона к заводским настройкам, после смены аппарата и просто при любых странностях с вводом текста или с превью. Отдельно удалять старую версию не нужно - несовместимая будет заменена автоматически. Операция идемпотентная: жать кнопку можно сколько угодно раз, лишнего она не сделает.