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

Материал из SmartPlayer
Новая страница: «Remote Device Management on Android OS»
 
Новая страница: «== '''Description of the Situation''' == The next stage in the development of the SmartPlayer platform is the introduction of remote control functionality for devices running Android OS. This feature allows users to control the device indirectly and manage content display. {{Note|'''It is recommended to configure this functionality with a technically competent specialist.'''|warn}}»
 
(не показано 5 промежуточных версий 2 участников)
Строка 1: Строка 1:
<div lang="ru" dir="ltr" class="mw-content-ltr">
== '''Description of the Situation''' ==
== '''Описание ситуации''' ==
The next stage in the development of the SmartPlayer platform is the introduction of remote control functionality for devices running Android OS. This feature allows users to control the device indirectly and manage content display.  
Очередным этапом развития платформы SmartPlayer является появлением такой функциональности как удаленной управление устройством на Android OS.<br>
{{Note|'''It is recommended to configure this functionality with a technically competent specialist.'''|warn}}
Данная возможность позволит управлять Android устройство on-line с помощью специального пункта меню раздела "Устройства" в личном кабинете пользователя.
 
{{Note|Данный функционал доступен для любого устройства, которое находится под управлением Android OS и работает в режиме on-line.|warn}}
== '''Preliminary Settings''' == 
{{Note|Поддержка звука начинается с Android 10  и выше.|warn}}
To use the remote control functionality on a device, the user must go to the “Remote Control” settings category. In this category, find the parameter with the same name and switch it to “Enable”. 
</div>
[[File:Настройка_webrtc.png|thumb|center| Example of displaying the “Remote Control” parameter in device settings|800px]]
<div lang="ru" dir="ltr" class="mw-content-ltr">
 
== '''Принцип действия''' ==
{{Note|The “As in build” option is mainly used by technical support specialists.|warn}}
{{Note|Для корректной работы данной функциональности пользователю необходимо иметь root-права на устройстве или же должна иметься подпись прошивки производителя устройства.|warn}}
 
Для того чтобы пользователь смог воспользоваться данной функциональностью, ему необходимо авторизоваться в личном кабинете SmartPlayer.
== '''Operating Principle''' ==
Следующим шагом пользователю необходимо перейти в раздел "Устройства" личного кабинета и найти нужное ему устройство.
To use this functionality, the user must log in to the SmartPlayer personal account.
[[File:Выбор_устройства_для_удаленного_управления.png|thumb|center| Пример отображения раздела "Устройства" в личном кабинете и on-line устройства. |800px]]
 
Кликнув на эту устройство, пользователю откроется тулбар (данный тулбар будет расположен справа). В этом тулбаре необходимо найти строку "Управление устройством".
Next, the user needs to go to the "Devices" section of the personal account and find the required device.
[[File:Правый_тулбар.png|thumb|center| Пример отображение тулбара справа с нужным параметром "Управление устройством".|800px]]
[[File:Выбор_устройства_для_удаленного_управления.png|thumb|center| Example of displaying the "Devices" section in the personal account and an on-line device.|800px]]
После нажатия на строку "Управление устройством" пользователю откроется окно, в котором будет эмулирован экран устройства и виртуальный пульт управления.  
 
[[File:Общий_вид.png|thumb|center| Пример отображения на устройстве трансляции с виртуальным пультом управления.|800px]]
After clicking on the device, a toolbar will open on the right side of the screen. In this toolbar, find the line "Device Control".
С помощью виртуального пульта пользователь сможет взаимодействовать с устройством и совершать нужные ему действия.
[[File:Правый_тулбар.png|thumb|center| Example of the right-side toolbar with the required "Device Control" parameter.|800px]]
{{Note|Удаленное управление также поддерживает взаимодействия не только через кнопки, но и через мышь и клики. В таком варианте в качестве выбора действия работает клик мыши. Исключением является только скроллинг/пролистывание вниз или вверх. Оно возможно только с кнопок виртуального пульта.|warn}}
 
</div>
After clicking "Device Control", a window will open displaying the device screen and a virtual remote control.
<div lang="ru" dir="ltr" class="mw-content-ltr">
[[File:Новый_общий_вид.png|thumb|center| Example of a broadcast displayed on the device with a virtual remote control.|800px]]
=== '''Виртуальный пульт''' ===
 
На виртуальном пульте управления будут доступны различные кнопки, которые будут влиять на возможности управления устройством. Виртуальный пульт включает в себя следующие кнопки:
Using the virtual remote, the user can interact with the device and perform the required actions.
# Клавиша "ОК" - отвечает за подтверждение выбранного действия или за проваливание в следующий пункт меню (по аналоги со стрелкой вправо)
 
# Джойстик на четыре направления (вверх, вниз, влево, вправо) - позволяет двигаться по элементам меню устройства. В зависимости от необходимости может: скроллить, проваливаться в следующий пункт меню, вернуться на шаг назад
{{Note|Remote control also supports interaction not only via buttons but also via mouse clicks. In this case, actions can be selected by mouse click. The only exception is scrolling up or down, which is available only via the virtual remote buttons.|warn}}
# Кнопка "Назад" - позволяет вернуться на предыдущий пункт меню управления устройством
 
# Кнопка "Домой" - позволяет полностью открыть/закрыть меню настроек устройства
=== '''Virtual Remote Control''' ===
# Кнопка отключения звука - позволяет выключить звук на устройстве
The virtual remote includes various buttons that affect device control. The remote contains the following buttons:
# Кнопка "+" - позволяет увеличить громкость устройства
 
# Кнопка "-" - позволяет уменьшить громкость устройства
# "OK" button — confirms the selected action or moves to the next menu item (similar to the right arrow)
[[File:Пульта_управления.png|thumb|center| Пример отображение виртуального пульта с кнопками.|800px]]
# Four-direction joystick (up, down, left, right) — allows navigation through device menu elements. Depending on the situation, it can: scroll, move to the next menu item, or return to the previous step
{{Note|На некоторых устройствах виртуальные клавиши "+" и "-" могут не функционировать. Это связано с аппаратными ограничениями устройства. Изменить громкость можно будет в личном кабинете через трансляцию или через физический пульт от приставки. |warn}}
# "Back" button — returns to the previous menu item
{{Note|При быстром многократном нажатии одной кнопки на пульте устройство запоминает все сделанные нажатия, но отображает их с задержкой. То есть, если пользователь пять раз нажмет стрелку вверх, то приставка сделает эти пять шагов, но с задержкой в одну секунду после каждого шага. Данный принцип является ограничением Android OS. |warn}}
# "Home" button — fully opens/closes the device settings menu
== '''Видеоинструкция''' ==
# Mute button — turns off the device sound
[https://www.youtube.com/watch?v=mRpz5flafXU Удаленное управление устройством на Android OS]
# +” button — increases the device volume
== '''Итоговый результат''' ==
# “-” button — decreases the device volume
Пользователь понимает и умеет использовать удаленное управление на устройствах под управлением Android OS.
 
</div>
[[File:Пульта_управления.png|thumb|center| Example of the virtual remote with buttons.|800px]]
 
== '''Device Management''' == 
Control icons have appeared in the upper-right corner of the device screen:
 
* hide all windows — returns the user to the broadcast screen;
* file transfer — modal window for exchanging files with the device;
* terminal — modal window displaying device logs;
* file manager — page with access to the device file system;
* keyboard capture — activates the SmartPlayer keyboard for working with the device.
 
[[File:Иконки управления устройством.png|thumb|center| Example of device control icons|800px]]
 
=== '''File Transfer''' === 
A special modal window that allows uploading files to the device memory. 
 
The “File Transfer” button opens a modal window with the following parameters and information:
 
* drag-and-drop area for file upload;
* empty field for uploading a file via URL;
* description of the functionality;
* description of the final upload destination path.
 
[[File:Отправка_файлов.png|thumb|center| Example of the modal window for file uploading|800px]]
 
When sending a file, the upload progress is displayed.
 
=== '''Terminal''' === 
The terminal uses Shell commands. Single commands are executed once. If a command runs continuously (for example, ping), the output will be periodically displayed in the terminal window. 
 
The terminal works as a modal window in the remote control interface and displays device logs. Using icons, it can be:
 
* expanded to full screen;
* minimized;
* closed.
 
[[File:Теримнал_устройства.png|thumb|center| Example of the terminal in remote control|800px]]
 
=== '''File Manager''' === 
The file manager is located within the device at a specific path corresponding to the external storage/flash drive name (this name can be found in the personal account under device information and then inserted into the path). 
[[File:Путь_с_названием_устройства.png|thumb|center| Example of displaying the path with the device name|800px]].
 
Inside the file manager, the user can manage directories using icons located in the upper-left corner of the screen:
 
* create folder — creates a new directory;
* go up one level — moves to the parent directory;
* refresh — updates the file manager and its contents;
* home — returns to the remote control screen.
 
[[File:Управление_директориями.png|thumb|center| Example of file manager control icons|800px]]
 
This page displays a list of files and folders located within the device storage. 
[[File:Список_файлов устройство.png|thumb|center| Example of the file manager page|800px]]
 
Different actions are available depending on the selected entity:
 
* folders — rename, delete, download;
[[File:Действия_с_папками.png|thumb|center| Example of actions for folders|800px]]
 
* regular files — rename, delete, download, run;
[[File:Действия_с_файлами.png|thumb|center| Example of actions for files|800px]]
 
* APK files — rename, delete, download, run, silent install (background installation);
[[File:Действия_с_APK.png|thumb|center| Example of actions for APK files|800px]]
 
* multiple selected files — delete, download.
[[File:Действия_с_выделенными_файлами.png|thumb|center| Example of actions for selected files|800px]]
 
{{Note|All files are downloaded in zip archive format.|warn}}
 
=== '''Keyboard Capture''' === 
Activating keyboard capture enables capturing keystrokes — typed text is registered by the system and displayed on the screen. When activated, the system keyboard (default device keyboard) is replaced with the SmartPlayer keyboard. 
 
To return to the system keyboard, click the globe icon at the bottom of the screen. When keyboard capture is disabled, text input in remote control mode is not possible.<br> 
 
Using the system keyboard is available, but text input is more complicated. Each character must be selected with a mouse click. Alternatively, text can be copied and pasted using keyboard shortcuts.
 
[[File:Стандартная_икона.png|thumb|center| Example of the icon for returning to the default keyboard|800px]]
 
== '''Functionality Limitations''' == 
In its current implementation, this functionality has several limitations, namely:
* '''Local servers only.''' If devices can ping each other via their local IP addresses, remote device control should work correctly. 
{{Note|In a local network where all devices are within the same subnet, remote control should function correctly. If, during usage within the local network, a device is located behind NAT, internet access is required to connect the devices. In this case, STUN servers are used to determine the external IP address (within the same local network if the device is behind NAT). However, if you have your own STUN server, this solution is not required.|warn}}
== '''Specific Features and Nuances of the Functionality''' ==
This section describes specific details and nuances of the functionality to help better understand its operating principles:
# Holding down the “Home” button on the remote disables “Kiosk” mode;
# Audio support is available starting from Android 10 and higher;
# Currently, remote control functionality is available even if the device status in the personal account is "off-line" (i.e., it should not be highlighted in green).
# The remote control process is partially independent from the client application, which provides certain advantages. For example: if the client application has crashed or does not start, remote control can be used to interact with the device — change system settings or install a new client application build to restore device functionality.
# If a broadcast does not start on the device, the file manager can be accessed via remote control.
# For proper operation of this functionality, the user must have root access on the device or the device firmware must be signed by the manufacturer. Most importantly, the network must be configured and access to the remote control microservice on the server must be available.
# On some devices, the virtual “+” and “-” buttons may not function. This is due to hardware limitations of the device. Volume can be adjusted in the personal account via the broadcast settings or using the physical remote control of the set-top box.
# When repeatedly pressing a button quickly, the device stores all presses but displays them with a delay. For example, if the user presses the up arrow five times, the device will perform all five actions but with a one-second delay after each step. This behavior is a limitation of Android OS.
# Some executable files located within the storage can be launched.
== '''Video Instruction''' == 
[https://www.youtube.com/watch?v=mRpz5flafXU Remote device control on Android OS]
== '''Final Result''' ==
The user understands and is able to use remote control on devices running Android OS.
== '''Demonstration Video''' == 
https://education_tutorial.hb.ru-msk.vkcs.cloud/Screencast%20from%2014.06.2024%2012%3A28%3A37.webm

Текущая версия от 09:58, 17 февраля 2026

Description of the Situation

The next stage in the development of the SmartPlayer platform is the introduction of remote control functionality for devices running Android OS. This feature allows users to control the device indirectly and manage content display.

It is recommended to configure this functionality with a technically competent specialist.

Preliminary Settings

To use the remote control functionality on a device, the user must go to the “Remote Control” settings category. In this category, find the parameter with the same name and switch it to “Enable”.

Example of displaying the “Remote Control” parameter in device settings
The “As in build” option is mainly used by technical support specialists.

Operating Principle

To use this functionality, the user must log in to the SmartPlayer personal account.

Next, the user needs to go to the "Devices" section of the personal account and find the required device.

Example of displaying the "Devices" section in the personal account and an on-line device.

After clicking on the device, a toolbar will open on the right side of the screen. In this toolbar, find the line "Device Control".

Example of the right-side toolbar with the required "Device Control" parameter.

After clicking "Device Control", a window will open displaying the device screen and a virtual remote control.

Example of a broadcast displayed on the device with a virtual remote control.

Using the virtual remote, the user can interact with the device and perform the required actions.

Remote control also supports interaction not only via buttons but also via mouse clicks. In this case, actions can be selected by mouse click. The only exception is scrolling up or down, which is available only via the virtual remote buttons.

Virtual Remote Control

The virtual remote includes various buttons that affect device control. The remote contains the following buttons:

  1. "OK" button — confirms the selected action or moves to the next menu item (similar to the right arrow)
  2. Four-direction joystick (up, down, left, right) — allows navigation through device menu elements. Depending on the situation, it can: scroll, move to the next menu item, or return to the previous step
  3. "Back" button — returns to the previous menu item
  4. "Home" button — fully opens/closes the device settings menu
  5. Mute button — turns off the device sound
  6. “+” button — increases the device volume
  7. “-” button — decreases the device volume
Example of the virtual remote with buttons.

Device Management

Control icons have appeared in the upper-right corner of the device screen:

  • hide all windows — returns the user to the broadcast screen;
  • file transfer — modal window for exchanging files with the device;
  • terminal — modal window displaying device logs;
  • file manager — page with access to the device file system;
  • keyboard capture — activates the SmartPlayer keyboard for working with the device.
Example of device control icons

File Transfer

A special modal window that allows uploading files to the device memory.

The “File Transfer” button opens a modal window with the following parameters and information:

  • drag-and-drop area for file upload;
  • empty field for uploading a file via URL;
  • description of the functionality;
  • description of the final upload destination path.
Example of the modal window for file uploading

When sending a file, the upload progress is displayed.

Terminal

The terminal uses Shell commands. Single commands are executed once. If a command runs continuously (for example, ping), the output will be periodically displayed in the terminal window.

The terminal works as a modal window in the remote control interface and displays device logs. Using icons, it can be:

  • expanded to full screen;
  • minimized;
  • closed.
Example of the terminal in remote control

File Manager

The file manager is located within the device at a specific path corresponding to the external storage/flash drive name (this name can be found in the personal account under device information and then inserted into the path).

Example of displaying the path with the device name

.

Inside the file manager, the user can manage directories using icons located in the upper-left corner of the screen:

  • create folder — creates a new directory;
  • go up one level — moves to the parent directory;
  • refresh — updates the file manager and its contents;
  • home — returns to the remote control screen.
Example of file manager control icons

This page displays a list of files and folders located within the device storage.

Example of the file manager page

Different actions are available depending on the selected entity:

  • folders — rename, delete, download;
Example of actions for folders
  • regular files — rename, delete, download, run;
Example of actions for files
  • APK files — rename, delete, download, run, silent install (background installation);
Example of actions for APK files
  • multiple selected files — delete, download.
Example of actions for selected files
All files are downloaded in zip archive format.

Keyboard Capture

Activating keyboard capture enables capturing keystrokes — typed text is registered by the system and displayed on the screen. When activated, the system keyboard (default device keyboard) is replaced with the SmartPlayer keyboard.

To return to the system keyboard, click the globe icon at the bottom of the screen. When keyboard capture is disabled, text input in remote control mode is not possible.

Using the system keyboard is available, but text input is more complicated. Each character must be selected with a mouse click. Alternatively, text can be copied and pasted using keyboard shortcuts.

Example of the icon for returning to the default keyboard

Functionality Limitations

In its current implementation, this functionality has several limitations, namely:

  • Local servers only. If devices can ping each other via their local IP addresses, remote device control should work correctly.
In a local network where all devices are within the same subnet, remote control should function correctly. If, during usage within the local network, a device is located behind NAT, internet access is required to connect the devices. In this case, STUN servers are used to determine the external IP address (within the same local network if the device is behind NAT). However, if you have your own STUN server, this solution is not required.

Specific Features and Nuances of the Functionality

This section describes specific details and nuances of the functionality to help better understand its operating principles:

  1. Holding down the “Home” button on the remote disables “Kiosk” mode;
  2. Audio support is available starting from Android 10 and higher;
  3. Currently, remote control functionality is available even if the device status in the personal account is "off-line" (i.e., it should not be highlighted in green).
  4. The remote control process is partially independent from the client application, which provides certain advantages. For example: if the client application has crashed or does not start, remote control can be used to interact with the device — change system settings or install a new client application build to restore device functionality.
  5. If a broadcast does not start on the device, the file manager can be accessed via remote control.
  6. For proper operation of this functionality, the user must have root access on the device or the device firmware must be signed by the manufacturer. Most importantly, the network must be configured and access to the remote control microservice on the server must be available.
  7. On some devices, the virtual “+” and “-” buttons may not function. This is due to hardware limitations of the device. Volume can be adjusted in the personal account via the broadcast settings or using the physical remote control of the set-top box.
  8. When repeatedly pressing a button quickly, the device stores all presses but displays them with a delay. For example, if the user presses the up arrow five times, the device will perform all five actions but with a one-second delay after each step. This behavior is a limitation of Android OS.
  9. Some executable files located within the storage can be launched.

Video Instruction

Remote device control on Android OS

Final Result

The user understands and is able to use remote control on devices running Android OS.

Demonstration Video

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