Удаленное управление устройством на Android OS: различия между версиями

Материал из SmartPlayer
Нет описания правки
 
(не показаны 3 промежуточные версии этого же участника)
Строка 1: Строка 1:
<languages/>
<languages/>
<translate>
<translate>
<!--T:4-->
== '''Описание ситуации''' ==
== '''Описание ситуации''' ==
Очередным этапом развития платформы SmartPlayer является появление функциональности удалённого управления устройством на Android OS. Функционал позволяет управлять устройством не напрямую и управлять отображением контента.  
Очередным этапом развития платформы SmartPlayer является появление функциональности удалённого управления устройством на Android OS. Функциональность позволяет удалённо управлять устройством и отображением контента.
{{Note|'''Рекомендуется настраивать функционал с технически компетентным специалистом.'''|warn}}
{{Note|'''Рекомендуется настраивать функционал с технически компетентным специалистом.'''|warn}}
<!--T:5-->
== '''Предварительные настройки''' ==
== '''Предварительные настройки''' ==
Для того чтобы использовать функциональность удалённого управления на устройстве пользователю переходит в категорию настроек «Удаленное управление». В этой категории найти одноименный параметр с переключателями и выбрать «Включить».
Для того чтобы использовать функциональность удалённого управления на устройстве, пользователю необходимо перейти в категорию настроек «Удаленное управление». В этой категории найти одноименный параметр с переключателями и выбрать «Включить».
[[File:Настройка_webrtc.png|thumb|center| Пример отображения параметра «Удаленное управление» в настройках устройства|800px]]
[[File:Настройка_webrtc.png|thumb|center| Пример отображения параметра «Удаленное управление» в настройках устройства|800px]]
{{Note|Вариант «Как в сборке» используется в основном специалистами технической поддержки.|warn}}
{{Note|Вариант «Как в сборке» используется в основном специалистами технической поддержки.|warn}}
== '''Принцип действия''' ==
== '''Принцип действия''' ==
Для того чтобы пользователь смог воспользоваться данной функциональностью, ему необходимо авторизоваться в личном кабинете SmartPlayer.
Для того чтобы пользователь смог воспользоваться данной функциональностью, ему необходимо авторизоваться в личном кабинете SmartPlayer.
Следующим шагом пользователю необходимо перейти в раздел "Устройства" личного кабинета и найти нужное ему устройство.
Следующим шагом пользователю необходимо перейти в раздел «Устройства» личного кабинета и найти нужное ему устройство.
[[File:Выбор_устройства_для_удаленного_управления.png|thumb|center| Пример отображения раздела "Устройства" в личном кабинете и on-line устройства. |800px]]
[[File:Выбор_устройства_для_удаленного_управления.png|thumb|center| Пример отображения раздела «Устройства» в личном кабинете и устройства в статусе online. |800px]]
Кликнув на это устройство, пользователю откроется тулбар (данный тулбар будет расположен справа). В этом тулбаре необходимо найти строку "Управление устройством".
После нажатия на устройство пользователю откроется тулбар, расположенный справа. В этом тулбаре необходимо найти строку «Управление устройством».
[[File:Правый_тулбар.png|thumb|center| Пример отображения тулбара справа с нужным параметром "Управление устройством".|800px]]
[[File:Правый_тулбар.png|thumb|center| Пример отображения тулбара справа с нужным параметром «Управление устройством».|800px]]
После нажатия на строку "Управление устройством" пользователю откроется окно, в котором будет отображён экран устройства и виртуальный пульт управления.  
После нажатия на строку «Управление устройством» пользователю откроется окно, в котором будет отображаться экран устройства и виртуальный пульт управления.  
[[File:Новый_общий_вид.png|thumb|center| Пример отображения на устройстве трансляции с виртуальным пультом управления.|800px]]
[[File:Новый_общий_вид.png|thumb|center| Пример отображения на устройстве трансляции с виртуальным пультом управления.|800px]]
С помощью виртуального пульта пользователь сможет взаимодействовать с устройством и совершать нужные ему действия.
С помощью виртуального пульта пользователь сможет взаимодействовать с устройством и выполнять необходимые действия.
{{Note|Удаленное управление также поддерживает взаимодействие не только через кнопки, но и через мышь и клики. В таком варианте в качестве выбора действия доступен клик мыши. Исключением является только скроллинг/пролистывание вниз или вверх. Оно возможно только с кнопок виртуального пульта.|warn}}
{{Note|Удаленное управление также поддерживает взаимодействие не только с помощью кнопок, но и с помощью мыши. В таком варианте в качестве выбора действия доступен клик мыши. Исключением является только скроллинг/пролистывание вниз или вверх. Прокрутка возможна только с помощью кнопок виртуального пульта.|warn}}
=== '''Виртуальный пульт''' ===
=== '''Виртуальный пульт''' ===
На виртуальном пульте управления будут доступны различные кнопки, которые будут влиять на возможности управления устройством. Виртуальный пульт включает в себя следующие кнопки:
На виртуальном пульте управления доступны различные кнопки, которые будут влиять на возможности управления устройством. Виртуальный пульт включает следующие кнопки:
# Клавиша "ОК" - отвечает за подтверждение выбранного действия или за проваливание в следующий пункт меню (по аналогии со стрелкой вправо)
# Клавиша «ОК» — отвечает за подтверждение выбранного действия или за переход в следующий пункт меню (по аналогии со стрелкой вправо).
# Джойстик на четыре направления (вверх, вниз, влево, вправо) - позволяет двигаться по элементам меню устройства. В зависимости от необходимости может: скроллить, проваливаться в следующий пункт меню, вернуться на шаг назад
# Джойстик на четыре направления (вверх, вниз, влево, вправо) позволяет двигаться по элементам меню устройства. В зависимости от необходимости может выполнять следующие действия: скроллить, проваливаться в следующий пункт меню, возврат на шаг назад.
# Кнопка "Назад" - позволяет вернуться на предыдущий пункт меню управления устройством
# Кнопка «Назад» — позволяет вернуться на предыдущий пункт меню управления устройством.
# Кнопка "Домой" - позволяет полностью открыть/закрыть меню настроек устройства
# Кнопка «Домой» — позволяет полностью открыть/закрыть меню настроек устройства.
# Кнопка отключения звука - позволяет выключить звук на устройстве
# Кнопка отключения звука позволяет выключить звук на устройстве.
# Кнопка «+» - позволяет увеличить громкость устройства
# Кнопка «+» позволяет увеличить громкость устройства.
# Кнопка «-» - позволяет уменьшить громкость устройства
# Кнопка «-» позволяет уменьшить громкость устройства.
[[File:Пульта_управления.png|thumb|center| Пример отображения виртуального пульта с кнопками.|800px]]
[[File:Пульта_управления.png|thumb|center| Пример отображения виртуального пульта с кнопками.|800px]]
== '''Управление на устройстве''' ==
== '''Управление на устройстве''' ==
На устройстве появились иконки управления в правом верхнем углу:
В интерфейсе удалённого управления появились иконки управления:
* скрыть все окна — переносит пользователя на экран с трансляцией;
* скрыть все окна — переносит пользователя на экран с трансляцией;
* передача файлов — модальное окно для работы с обменом файлами с устройством;
* передача файлов — открывает модальное окно с обменом файлами с устройством;
* терминал — модальное окно с выводом логов о работе устройства;
* терминал — открывает модальное окно с выводом логов о работе устройства;
* файловый менеджер — страница с доступом к файловой системе устройства;
* файловый менеджер — открывает страницу с доступом к файловой системе устройства;
* захват клавиатуры — активирует специальную клавиатуру SmartpLayer для работы с устройством.
* захват клавиатуры — активирует специальную клавиатуру SmartPlayer для работы с устройством.
[[File:Иконки управления устройством.png|thumb|center| Пример отображения иконок управления устройством|800px]]
[[File:Иконки управления устройством.png|thumb|center| Пример отображения иконок управления устройством|800px]]
=== '''Отправка файлов''' ===
=== '''Отправка файлов''' ===
Специальное модальное окно позволяющее загрузить файлы в память устройства.
Модальное окно «Отправка файлов» позволяет загрузить файл в память устройства.
Кнопка «Отправка файлов» открывает модальное окно, в котором есть следующие параметры и данные:
Кнопка «Отправка файлов» открывает модальное окно, в котором есть следующие параметры и данные:
* окно для загрузки файлов через drag-n-drop (перетаскивание файла);
* окно для загрузки файлов через drag-and-drop (перетаскивание файла);
* пустое поле для загрузки файла по URL-ссылке;
* пустое поле для загрузки файла по URL-ссылке;
* описание работы функционала;
* описание работы функциональности;
* описание конечной точки пути загрузки.
* описание конечной точки пути загрузки.
[[File:Отправка_файлов.png|thumb|center| Пример отображения модального окна с загрузкой файлов|800px]]
[[File:Отправка_файлов.png|thumb|center| Пример отображения модального окна с загрузкой файлов|800px]]
При отправке файла виден прогресс его загрузки на устройство.
При отправке файла отображается прогресс загрузки на устройство.
=== '''Терминал''' ===
=== '''Терминал''' ===
В терминале используются Shell-команды. Одиночные команды в терминале выполняются единоразово. Если команда продолжительная по времени действия (например ping), то информация от этой команды периодически выводится в окне терминала.
В терминале используются shell-команды. Одиночные команды в терминале выполняются один раз. Если команда выполняется продолжительное время, например, ping, то результат, то результат её выполнения периодически выводится в окне терминала.
Терминал в интерфейсе удаленного управления работает как модальное окно и отображает информацию с логами об устройстве. С помощью иконок его можно:
Терминал в интерфейсе удаленного управления работает как модальное окно и отображает логи устройства. С помощью иконок его можно:
* развернуть на весь экран;
* развернуть на весь экран;
* свернуть;
* свернуть;
Строка 56: Строка 53:
[[File:Теримнал_устройства.png|thumb|center| Пример отображения терминала в удаленном управлении|800px]]
[[File:Теримнал_устройства.png|thumb|center| Пример отображения терминала в удаленном управлении|800px]]
=== '''Файловый менеджер''' ===
=== '''Файловый менеджер''' ===
Файловый менеджер расположен внутри устройства по определенному пути с названием внешнего хранилища/flash-карты(название можно просмотреть в личном кабинете в информации по устройству и в последствии вставить в путь).
Файловый менеджер открывает путь к внутреннему хранилищу устройства с названием внешнего хранилища/flash-карте необходимо указать имя. Для перехода к внешнему хранилищу необходимо вставить имя внешнего хранилища (смотреть скриншот ниже).
[[File:Путь_с_названием_устройства.png|thumb|center| Пример отображения пути с названием устройства|800px]].
[[File:Путь_с_названием_устройства.png|thumb|center| Пример отображения пути с названием устройства|800px]].
Внутри файлового менеджера пользователь может управлять файловым менеджером. Для этого используются иконки, расположенные в левом верхнем углу экрана:
Внутри файлового менеджера пользователь может управлять его функциональностью с помощью иконок, расположенных в левом верхнем углу экрана:
* создать папку — создает новую директорию в файловом менеджере;
* создать папку — создает новую директорию в файловом менеджере;
* переход на уровень выше — выходит из текущей папки на уровень предыдущей;
* переход на уровень выше — выводит пользователя из текущей папки на предыдущий уровень;
* обновить — обновляет состояние файлового менеджера и его содержимого;
* обновить — обновляет состояние файлового менеджера и его содержимое;
* домой — кнопка выхода на экран удаленного управления.
* домой — отправляет пользователя в начальную директорию (обычно "storage/emulated/0").
[[File:Управление_директориями.png|thumb|center| Пример отображения иконок управляющих файловым менеджером|800px]]
[[File:Управление_директориями.png|thumb|center| Пример отображения иконок управляющих файловым менеджером|800px]]
Данная страница открывается по нажатию кнопки и представляет собой список с файлами и папками, расположенными внутри хранилища устройства.
Данная страница открывается по нажатию кнопки и представляет собой список файлов и папок, расположенными внутри хранилища устройства.
[[File:Список_файлов устройство.png|thumb|center| Пример отображения страницы файлового менеджера|800px]]
[[File:Список_файлов устройство.png|thumb|center| Пример отображения страницы файлового менеджера|800px]]
При работе с элементами файлового менеджера доступен разный набор действий для разных сущностей:
При работе с элементами файлового менеджера доступен разный набор действий для разных типов объектов:
* папки — доступны команды: переименовать, удалить, скачать;
* папки — доступны команды: переименовать, удалить, скачать;
[[File:Действия_с_папками.png|thumb|center| Пример отображения действий с папками|800px]]
[[File:Действия_с_папками.png|thumb|center| Пример отображения действий с папками|800px]]
Строка 75: Строка 72:
* действия при выделении нескольких файлов — доступны команды: удалить, скачать.
* действия при выделении нескольких файлов — доступны команды: удалить, скачать.
[[File:Действия_с_выделенными_файлами.png|thumb|center| Пример отображения действий с выделенными файлами|800px]]
[[File:Действия_с_выделенными_файлами.png|thumb|center| Пример отображения действий с выделенными файлами|800px]]
{{Note|Все файлы скачиваются в формате zip-архива.|warn}}
{{Note|Все файлы скачиваются в формате Zip-архива.|warn}}
=== '''Захват клавиатуры''' ===
=== '''Захват клавиатуры''' ===
Активация захвата нажатий включает захват действий,  то набираемый текст с клавиатуры регистрируется системой и выводится на экран. При активации захвата клавиатура меняется с системной (установленной на устройстве по умолчанию) на клавиатуру SmartPlayer. Вернуть системную клавиатуру можно кликнув по иконке глобуса внизу экрана. При отключённом захвате клавиатуры ввести текст в режиме удаленного управления нельзя. <br>
При активации захвата нажатий вводимый с клавиатуры текст регистрируется системой и выводится на экран. При активации захвата клавиатура меняется с системной, установленной на устройстве по умолчанию, на клавиатуру SmartPlayer. Вернуть системную клавиатуру можно, нажав на иконку глобуса внизу экрана. При отключённом захвате клавиатуры ввести текст в режиме удаленного управления с помощью клавиатуры ПК нельзя. <br>
Использование системной клавиатуры доступно, но набор текста усложнён. Каждый символ выбирается кликом мыши. В качестве альтернативного варианта можно копировать и вставлять текст через горячие клавиши.
При отключенном захвате клавиатуры можно использовать системную клавиатуру. Для удобства ввода доступны копирование и вставка текста.
[[File:Стандартная_икона.png|thumb|center| Пример отображения иконки для возвращения стандартной иконки|800px]]
[[File:Стандартная_икона.png|thumb|center| Пример отображения иконки для возврата стандартной клавиатуры|800px]]
 
<!--T:6-->
<!--T:6-->
== '''Ограничения функциональности''' ==
== '''Ограничения функциональности''' ==
Данная функциональность в текущей реализации имеет некоторые ограничения, а именно:
Данная функциональность в текущей реализации имеет следующие ограничения:
* '''Только для локальных серверов.''' Если устройства пингуются друг с другом по своим локальным Ip-адресам, то удаленное управление устройством должно работать корректно.  
* '''Только для локальных серверов.''' Если устройства пингуются друг с другом по своим локальным IP-адресам, удаленное управление устройством должно работать корректно.  
{{Note|В локальной сети, где все устройства находятся в одной подсети, то работа удаленного управления устройством должна быть корректна. В случае, если в процессе использования удаленного управления устройством, в рамках их локальной сети устройство находится за NAT, то для подключения устройств нужен доступ к глобальной сети интернет. Так как в этом случае используются STUN-сервера для определения внешнего IP (в рамках одной локальной сети если устройство находится за NAT). Но если имеется свой STUN-сервер, данное решение не нужно.|warn}}
== '''Тонкости и нюансы работы функционала''' ==
== '''Тонкости и нюансы работы функционала''' ==
В данном разделе будут описаны тонкости и нюансы работы функционала, которые позволят лучше разобраться в принципах его действия:
В данном разделе описаны тонкости и нюансы работы функционала, которые позволят лучше разобраться в принципах его действия:
# Зажатая клавиша на пульте «Домой» отключает режим «Киоска»;
# Зажатая клавиша на пульте «Домой» временно отключает режим «Киоск».
# Поддержка звука начинается с Android 10 и выше;
# Поддержка передачи звука начинается с Android 10 и выше.
# На данный момент пользователю доступен функционал для удалённого управления, даже если устройство имеет статус в личном кабинете "off-line" (то есть оно не должно подсвечиваться зелёным).
# На данный момент пользователю доступен функционал для удалённого управления, даже если устройство имеет статус «offline» в личном кабинете, то есть оно не подсвечивается зелёным.
# Сам процесс работы удаленного управления отчасти обособлен от работы клиентского приложения, что имеет некоторые преимущества. Например: если клиентское приложение крашнулось или не запускается, то с помощью удаленного управления можно взаимодействовать с устройством - поменять настройки в системе устройства или установить новый билд клиентского приложения для восстановления работоспособности устройства.
# Сам процесс работы удаленного управления отчасти обособлен от работы клиентского приложения, что имеет некоторые преимущества. Например, клиентское приложение аварийно завершило работу или не запускается, то с помощью удаленного управления можно взаимодействовать с устройством: изменить настройки в системе устройства или установить новый билд клиентского приложения для восстановления работоспособности устройства.
# Если трансляция не запустилась на устройстве, то через удаленное управление можно взаимодействовать с файловым менеджером устройства.
# Если трансляция не запустилась на устройстве, через удаленное управление можно взаимодействовать с файловым менеджером устройства.
# Для корректной работы данной функциональности пользователю необходимо иметь root-права на устройстве или же должна иметься подпись прошивки производителя устройства. Главное, чтобы была настроена сеть и доступ до микросервиса удалённого управления на сервере.
# Для корректной работы данной функциональности пользователю необходимо иметь root-права на устройстве или же должна иметься подпись прошивки производителя устройства. Главное, чтобы была настроена сеть и доступ к микросервису удалённого управления на сервере.
# На некоторых устройствах виртуальные клавиши «+» и «-» могут не функционировать. Это связано с аппаратными ограничениями устройства. Изменить громкость можно будет в личном кабинете через трансляцию или через физический пульт от приставки.  
# На некоторых устройствах виртуальные клавиши «+» и «-» могут не функционировать. Это связано с аппаратными ограничениями устройства. Изменить громкость можно будет в личном кабинете через трансляцию или через физический пульт от приставки.  
# При быстром многократном нажатии одной кнопки на пульте устройство запоминает все сделанные нажатия, но отображает их с задержкой. То есть, если пользователь пять раз нажмет стрелку вверх, то приставка сделает эти пять шагов, но с задержкой в одну секунду после каждого шага. Данный принцип является ограничением Android OS.  
# При быстром многократном нажатии одной кнопки на пульте устройство запоминает все сделанные нажатия, но отображает их с задержкой. То есть если пользователь пять раз нажмет стрелку вверх, то приставка выполнит эти пять шагов, но с задержкой в одну секунду после каждого шага. Такое поведение является ограничением Android OS.  
# Некоторые исполняемые файлы, расположенные внутри хранилища можно запустить.
# Не все исполняемые файлы, расположенные внутри хранилища, можно запустить.
 
== '''Видеоинструкция''' ==
== '''Видеоинструкция''' ==
[https://www.youtube.com/watch?v=mRpz5flafXU Удаленное управление устройством на Android OS]
[https://www.youtube.com/watch?v=mRpz5flafXU Удаленное управление устройством на Android OS]
== '''Итоговый результат''' ==
== '''Итоговый результат''' ==
Пользователь понимает и умеет использовать удаленное управление на устройствах под управлением Android OS.
Удалённое управление удаленное управление на устройствах под управлением Android OS.
== '''Демонстрационное видео''' ==
== '''Демонстрационное видео''' ==
https://education_tutorial.hb.ru-msk.vkcs.cloud/Screencast%20from%2014.06.2024%2012%3A28%3A37.webm
https://education_tutorial.hb.ru-msk.vkcs.cloud/Screencast%20from%2014.06.2024%2012%3A28%3A37.webm
</translate>
</translate>

Текущая версия от 15:44, 2 июня 2026

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

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

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

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

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

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

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

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

Пример отображения раздела «Устройства» в личном кабинете и устройства в статусе online.

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

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

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

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

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

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

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

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

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

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

В интерфейсе удалённого управления появились иконки управления:

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

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

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

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

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

Терминал

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

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

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

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

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

.

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

  • создать папку — создает новую директорию в файловом менеджере;
  • переход на уровень выше — выводит пользователя из текущей папки на предыдущий уровень;
  • обновить — обновляет состояние файлового менеджера и его содержимое;
  • домой — отправляет пользователя в начальную директорию (обычно "storage/emulated/0").
Пример отображения иконок управляющих файловым менеджером

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

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

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

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

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

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

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

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

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

  • Только для локальных серверов. Если устройства пингуются друг с другом по своим локальным IP-адресам, удаленное управление устройством должно работать корректно.

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

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

  1. Зажатая клавиша на пульте «Домой» временно отключает режим «Киоск».
  2. Поддержка передачи звука начинается с Android 10 и выше.
  3. На данный момент пользователю доступен функционал для удалённого управления, даже если устройство имеет статус «offline» в личном кабинете, то есть оно не подсвечивается зелёным.
  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