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

Материал из SmartPlayer

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Терминал

Терминал внутри устройства работает как модальное окно и отображает информацию с логами об устройстве. С помощью иконок его можно:

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

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

если включить захват , то то что пишешь с клавиатуры предеается на устройство. Если включить захват клавиатуры то набираемый текст с клавиатуры регистрируется системой и выводится на экран. При активации захвата клавиатура меняется с системной и на клавиатуру smartplayer. Вернуть системную клавиатуру можно кликнув по иконке глобуса внизу экрана. При отключении захвата клавиатуры ввести текст в удаленном управлении нельзя. Можно исключительно только через системную клавиатуру вручную. Или же если копируешь текст с компа и вставляешь в удаленное управление через ctrl+v/ и в обратном процессе все функицонарте.

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

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

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

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

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

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

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

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

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

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

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

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