Remote Device Management on Android OS

Материал из SmartPlayer
Версия от 09:53, 17 февраля 2026; FuzzyBot (обсуждение | вклад) (Обновление для соответствия новой версии исходной страницы.)

Описание ситуации

очередным этапом развития платформы SmartPlayer является появление функциональности удалённого управления устройством на Android OS. Функционал позволяет управлять устройством не напрямую и управлять отображением контента.

Рекомендуется настраивать функционал с технически компетентным специалистом.

Предварительные настройки

Для того чтобы использовать функциональность удалённого управления на устройстве пользователю переходит в категорию настроек «Удаленное управление». В этой категории найти одноименный параметр с переключателями и выбрать «Включить».

Пример отображения параметра «Удаленное управление» в настройках устройства
Вариант «Как в сборке» используется в основном специалистами технической поддержки.

Принцип действия

Для того чтобы пользователь смог воспользоваться данной функциональностью, ему необходимо авторизоваться в личном кабинете SmartPlayer. Следующим шагом пользователю необходимо перейти в раздел "Устройства" личного кабинета и найти нужное ему устройство.

Пример отображения раздела "Устройства" в личном кабинете и on-line устройства.

Кликнув на это устройство, пользователю откроется тулбар (данный тулбар будет расположен справа). В этом тулбаре необходимо найти строку "Управление устройством".

Пример отображения тулбара справа с нужным параметром "Управление устройством".

После нажатия на строку "Управление устройством" пользователю откроется окно, в котором будет отображён экран устройства и виртуальный пульт управления.

Пример отображения на устройстве трансляции с виртуальным пультом управления.

С помощью виртуального пульта пользователь сможет взаимодействовать с устройством и совершать нужные ему действия.

Удаленное управление также поддерживает взаимодействие не только через кнопки, но и через мышь и клики. В таком варианте в качестве выбора действия доступен клик мыши. Исключением является только скроллинг/пролистывание вниз или вверх. Оно возможно только с кнопок виртуального пульта.

Виртуальный пульт

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

  1. Клавиша "ОК" - отвечает за подтверждение выбранного действия или за проваливание в следующий пункт меню (по аналогии со стрелкой вправо)
  2. Джойстик на четыре направления (вверх, вниз, влево, вправо) - позволяет двигаться по элементам меню устройства. В зависимости от необходимости может: скроллить, проваливаться в следующий пункт меню, вернуться на шаг назад
  3. Кнопка "Назад" - позволяет вернуться на предыдущий пункт меню управления устройством
  4. Кнопка "Домой" - позволяет полностью открыть/закрыть меню настроек устройства
  5. Кнопка отключения звука - позволяет выключить звук на устройстве
  6. Кнопка «+» - позволяет увеличить громкость устройства
  7. Кнопка «-» - позволяет уменьшить громкость устройства
Пример отображения виртуального пульта с кнопками.

Управление на устройстве

На устройстве появились иконки управления в правом верхнем углу:

  • скрыть все окна — переносит пользователя на экран с трансляцией;
  • передача файлов — модальное окно для работы с обменом файлами с устройством;
  • терминал — модальное окно с выводом логов о работе устройства;
  • файловый менеджер — страница с доступом к файловой системе устройства;
  • захват клавиатуры — активирует специальную клавиатуру SmartpLayer для работы с устройством.
Пример отображения иконок управления устройством

Отправка файлов

Специальное модальное окно позволяющее загрузить файлы в память устройства. Кнопка «Отправка файлов» открывает модальное окно, в котором есть следующие параметры и данные:

  • окно для загрузки файлов через drag-n-drop (перетаскивание файла);
  • пустое поле для загрузки файла по URL-ссылке;
  • описание работы функционала;
  • описание конечной точки пути загрузки.
Пример отображения модального окна с загрузкой файлов

При отправке файла виден прогресс его загрузки на устройство.

Терминал

В терминале используются Shell-команды. Одиночные команды в терминале выполняются единоразово. Если команда продолжительная по времени действия (например ping), то информация от этой команды периодически выводится в окне терминала. Терминал в интерфейсе удаленного управления работает как модальное окно и отображает информацию с логами об устройстве. С помощью иконок его можно:

  • развернуть на весь экран;
  • свернуть;
  • закрыть.
Пример отображения терминала в удаленном управлении

Файловый менеджер

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

Пример отображения пути с названием устройства
.

Внутри файлового менеджера пользователь может управлять файловым менеджером. Для этого используются иконки, расположенные в левом верхнем углу экрана:

  • создать папку — создает новую директорию в файловом менеджере;
  • переход на уровень выше — выходит из текущей папки на уровень предыдущей;
  • обновить — обновляет состояние файлового менеджера и его содержимого;
  • домой — кнопка выхода на экран удаленного управления.
Пример отображения иконок управляющих файловым менеджером

Данная страница открывается по нажатию кнопки и представляет собой список с файлами и папками, расположенными внутри хранилища устройства.

Пример отображения страницы файлового менеджера

При работе с элементами файлового менеджера доступен разный набор действий для разных сущностей:

  • папки — доступны команды: переименовать, удалить, скачать;
Пример отображения действий с папками
  • обычные файлы — доступны команды: переименовать, удалить, скачать, запустить;
Пример отображения действий с файлами
  • APK-файлы — доступны команды: переименовать, удалить, скачать, запустить, тихая установка (фоновая установка);
Пример отображения действий с APK-файлами
  • действия при выделении нескольких файлов — доступны команды: удалить, скачать.
Пример отображения действий с выделенными файлами
Все файлы скачиваются в формате zip-архива.

Захват клавиатуры

Активация захвата нажатий включает захват действий, то набираемый текст с клавиатуры регистрируется системой и выводится на экран. При активации захвата клавиатура меняется с системной (установленной на устройстве по умолчанию) на клавиатуру SmartPlayer. Вернуть системную клавиатуру можно кликнув по иконке глобуса внизу экрана. При отключённом захвате клавиатуры ввести текст в режиме удаленного управления нельзя.
Использование системной клавиатуры доступно, но набор текста усложнён. Каждый символ выбирается кликом мыши. В качестве альтернативного варианта можно копировать и вставлять текст через горячие клавиши.

Пример отображения иконки для возвращения стандартной иконки

Ограничения функциональности

Данная функциональность в текущей реализации имеет некоторые ограничения, а именно:

  • Только для локальных серверов. Если устройства пингуются друг с другом по своим локальным Ip-адресам, то удаленное управление устройством должно работать корректно.
В локальной сети, где все устройства находятся в одной подсети, то работа удаленного управления устройством должна быть корректна. В случае, если в процессе использования удаленного управления устройством, в рамках их локальной сети устройство находится за NAT, то для подключения устройств нужен доступ к глобальной сети интернет. Так как в этом случае используются STUN-сервера для определения внешнего IP (в рамках одной локальной сети если устройство находится за NAT). Но если имеется свой STUN-сервер, данное решение не нужно.

Тонкости и нюансы работы функционала

В данном разделе будут описаны тонкости и нюансы работы функционала, которые позволят лучше разобраться в принципах его действия:

  1. Зажатая клавиша на пульте «Домой» отключает режим «Киоска»;
  2. Поддержка звука начинается с Android 10 и выше;
  3. На данный момент пользователю доступен функционал для удалённого управления, даже если устройство имеет статус в личном кабинете "off-line" (то есть оно не должно подсвечиваться зелёным).
  4. Сам процесс работы удаленного управления отчасти обособлен от работы клиентского приложения, что имеет некоторые преимущества. Например: если клиентское приложение крашнулось или не запускается, то с помощью удаленного управления можно взаимодействовать с устройством - поменять настройки в системе устройства или установить новый билд клиентского приложения для восстановления работоспособности устройства.
  5. Если трансляция не запустилась на устройстве, то через удаленное управление можно взаимодействовать с файловым менеджером устройства.
  6. Для корректной работы данной функциональности пользователю необходимо иметь root-права на устройстве или же должна иметься подпись прошивки производителя устройства. Главное, чтобы была настроена сеть и доступ до микросервиса удалённого управления на сервере.
  7. На некоторых устройствах виртуальные клавиши «+» и «-» могут не функционировать. Это связано с аппаратными ограничениями устройства. Изменить громкость можно будет в личном кабинете через трансляцию или через физический пульт от приставки.
  8. При быстром многократном нажатии одной кнопки на пульте устройство запоминает все сделанные нажатия, но отображает их с задержкой. То есть, если пользователь пять раз нажмет стрелку вверх, то приставка сделает эти пять шагов, но с задержкой в одну секунду после каждого шага. Данный принцип является ограничением Android OS.
  9. Некоторые исполняемые файлы, расположенные внутри хранилища можно запустить.

Видеоинструкция

Удаленное управление устройством на Android OS

Итоговый результат

Пользователь понимает и умеет использовать удаленное управление на устройствах под управлением Android OS.

Демонстрационное видео

https://education_tutorial.hb.ru-msk.vkcs.cloud/Screencast%20from%2014.06.2024%2012%3A28%3A37.webm