Android: различия между версиями
Нет описания правки |
Нет описания правки |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 2: | Строка 2: | ||
<translate> | <translate> | ||
<!--T:1--> | |||
== Минимальные требования == | |||
* Операционная система: Android 5.0 и выше (уровень API: 21 и выше); | * Операционная система: Android 5.0 и выше (уровень API: 21 и выше); | ||
* Наличие сетевого интерфейса (WiFi или Ethernet); | * Наличие сетевого интерфейса (WiFi или Ethernet); | ||
Строка 32: | Строка 33: | ||
|Дополнительно | |Дополнительно | ||
<!--T:23--> | |||
|- | |- | ||
|[https://www.ugoos.com/x4-tv-box-family-series-devices-based-on-android-11-0/ Ugoos X4 Box Family Series (Cube, Pro, Plus)] | |[https://www.ugoos.com/x4-tv-box-family-series-devices-based-on-android-11-0/ Ugoos X4 Box Family Series (Cube, Pro, Plus)] | ||
Строка 48: | Строка 50: | ||
<!--T:24--> | |||
|- | |- | ||
|[https://ugoos.com/x3-tv-box-family-series-devices-based-on-android-9-0/ Ugoos X3 Box Family Series (Cube, Pro, Plus)] | |[https://ugoos.com/x3-tv-box-family-series-devices-based-on-android-9-0/ Ugoos X3 Box Family Series (Cube, Pro, Plus)] | ||
Строка 62: | Строка 65: | ||
|Яндекс.Маркет, Amazon | |Яндекс.Маркет, Amazon | ||
<!--T:3--> | |||
|- | |- | ||
|[http://ugoos.ru/android-pristavki?product_id=151 Ugoose AM3 2Gb/16Gb] | |[http://ugoos.ru/android-pristavki?product_id=151 Ugoose AM3 2Gb/16Gb] | ||
Строка 81: | Строка 85: | ||
'''Исключения''' | '''Исключения''' | ||
Приставки от производителя Harper имеют проблемы с выбором ориентации. Данная проблема связана с особенностями прошивки. Прошивка поддерживает только горизонтальную ориентацию. Сейчас ведётся работа с производителем для решения данной проблемы. | Приставки от производителя Harper имеют проблемы с выбором ориентации. Данная проблема связана с особенностями прошивки. Прошивка поддерживает только горизонтальную ориентацию. Сейчас ведётся работа с производителем для решения данной проблемы. | ||
=== Подробное описание возможностей === | === Подробное описание возможностей === | ||
* "Перезагрузка" - перезагрузка устройства физически. Приложение SmartPlayer запустится автоматически после запуска операционной системы. | * "Перезагрузка" - перезагрузка устройства физически. Приложение SmartPlayer запустится автоматически после запуска операционной системы. | ||
Строка 104: | Строка 107: | ||
Последние прошивки для TV BOX: https://chinagadgetsreviews.com/firmwares | Последние прошивки для TV BOX: https://chinagadgetsreviews.com/firmwares | ||
== <span id="modeWorks"></span>Режимы работы приложения SmartPlayer на устройстве == | <!--T:7--> | ||
== <span id="modeWorks"></span>Режимы работы приложения SmartPlayer на устройстве == | |||
'''Приложение на устройстве может иметь разные привилегии, в зависимости от этого можно управлять устройством''' | '''Приложение на устройстве может иметь разные привилегии, в зависимости от этого можно управлять устройством''' | ||
* Обычный - по умолчанию при установки приложения SmartPlayer на любое устройство с Android 5.0 и выше. | * Обычный - по умолчанию при установки приложения SmartPlayer на любое устройство с Android 5.0 и выше. | ||
Строка 112: | Строка 116: | ||
* Интеграция с SDK производителя устройства - Некоторые производители Android OS устройств предоставляют свой SDK, который позволяет делать управление устройством в обход классической модели. Интеграция с SDK всегда требует времени, так как: необходимо получать ключи на интеграцию и дорабатывать приложение в условиях которые каждый производитель определяет самостоятельно. | * Интеграция с SDK производителя устройства - Некоторые производители Android OS устройств предоставляют свой SDK, который позволяет делать управление устройством в обход классической модели. Интеграция с SDK всегда требует времени, так как: необходимо получать ключи на интеграцию и дорабатывать приложение в условиях которые каждый производитель определяет самостоятельно. | ||
<!--T: | <!--T:25--> | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
Строка 168: | Строка 172: | ||
|} | |} | ||
<!--T: | |||
<!--T:26--> | |||
'''Плюсы и минусы работы приложения в разных режимах.''' | '''Плюсы и минусы работы приложения в разных режимах.''' | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 205: | Строка 210: | ||
|} | |} | ||
<!--T:10--> | |||
<span id="AndroidDeviceOwnerAccept"> | |||
'''Выдача режима Device Owner (Владелец устройства). Данный функционал есть на AndroidOS. AndroidOS TV не поддерживает.'''</> | '''Выдача режима Device Owner (Владелец устройства). Данный функционал есть на AndroidOS. AndroidOS TV не поддерживает.'''</> | ||
<!--T:27--> | |||
Для включения режима “владелец устройства” потребуется подключение к устройству через [https://developer.android.com/studio/command-line/adb ADB (Android Device Bridge)]. После установки соединения (через провод или по wifi без разницы). Для включения через провод, нужно активировать режим разработчика, для этого нужно: 7 раз нажать на название билда (или сборки), потом откроются настройки разработчика, где нужно включить опцию “Отладка по USB” и включить режим USB в MTP, по умолчанию ставится режим “Зарядка”, который не позволяет подключаться к девайсу. Если выбран путь подключения через WIFI то нужно на девайсе открыть порт 5555, через терминальную команду, сам терминал можно скачать из [https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=ru&gl=US Google Play]. | Для включения режима “владелец устройства” потребуется подключение к устройству через [https://developer.android.com/studio/command-line/adb ADB (Android Device Bridge)]. После установки соединения (через провод или по wifi без разницы). Для включения через провод, нужно активировать режим разработчика, для этого нужно: 7 раз нажать на название билда (или сборки), потом откроются настройки разработчика, где нужно включить опцию “Отладка по USB” и включить режим USB в MTP, по умолчанию ставится режим “Зарядка”, который не позволяет подключаться к девайсу. Если выбран путь подключения через WIFI то нужно на девайсе открыть порт 5555, через терминальную команду, сам терминал можно скачать из [https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=ru&gl=US Google Play]. | ||
<!--T:28--> | |||
После подключения, проверяем девайс, командой:<br/> | После подключения, проверяем девайс, командой:<br/> | ||
$ adb devices <br/> | $ adb devices <br/> | ||
Строка 220: | Строка 228: | ||
$ adb shell dpm set-device-owner org.smartplayer.client.develop/co.displaysolutions.digitalsignage.SPAdminReceiver <br/> | $ adb shell dpm set-device-owner org.smartplayer.client.develop/co.displaysolutions.digitalsignage.SPAdminReceiver <br/> | ||
<!--T:29--> | |||
Если все пройдет успешно, adb напишет, что теперь владелец девайса - приложение SmartPlayer. После этого нужно перезапустить приложение (один раз) для активации приложение режима киоска.<br/> | Если все пройдет успешно, adb напишет, что теперь владелец девайса - приложение SmartPlayer. После этого нужно перезапустить приложение (один раз) для активации приложение режима киоска.<br/> | ||
<!--T:30--> | |||
На устройстве может быть только одно приложение в режиме “владелец устройства”. Сбросить “владельца устройства” можно только скинув устройство к заводским настройкам (Settings > Backup & Reset > Factory data reset)<br/> | На устройстве может быть только одно приложение в режиме “владелец устройства”. Сбросить “владельца устройства” можно только скинув устройство к заводским настройкам (Settings > Backup & Reset > Factory data reset)<br/> | ||
== Установка клиентского приложения на телефон (планшет) | <!--T:31--> | ||
== Установка клиентского приложения на телефон (планшет) | |||
Скачать приложение на устройство, использую полученную ссылку. | Скачать приложение на устройство, использую полученную ссылку. | ||
Запустить apk файл. | Запустить apk файл. | ||
Строка 244: | Строка 255: | ||
== Решения и настройка в нестандартных ситуациях == <!--T:11--> | == Решения и настройка в нестандартных ситуациях == <!--T:11--> | ||
<!--T:32--> | |||
=== Установка приложения из apk файла === | === Установка приложения из apk файла === | ||
Если при установке появляется ошибка (может быть различный текст) и не появляется окно для разрешения установки из неизвестных источников. Сделать следующее: | Если при установке появляется ошибка (может быть различный текст) и не появляется окно для разрешения установки из неизвестных источников. Сделать следующее: | ||
Строка 252: | Строка 264: | ||
[[Файл:Ошибка синтактического анализа.jpg|250px]] | [[Файл:Ошибка синтактического анализа.jpg|250px]] | ||
<!--T:33--> | |||
=== Регистрация устройства (первый запуск) === | === Регистрация устройства (первый запуск) === | ||
При регистрации устройства данные по 9 значному коду должны быть получены с сервера SmartPlayer. Если связи с сервером нет, будет показана ошибка вида | При регистрации устройства данные по 9 значному коду должны быть получены с сервера SmartPlayer. Если связи с сервером нет, будет показана ошибка вида | ||
[[Файл:ErrorFirstConnectToServer.png|мини|центр]] | [[Файл:ErrorFirstConnectToServer.png|мини|центр]] | ||
<!--T:34--> | |||
Данная ошибка говорит о том, что не удается соединиться с сервером. Адрес сервера указан в описании ошибки, решения: | Данная ошибка говорит о том, что не удается соединиться с сервером. Адрес сервера указан в описании ошибки, решения: | ||
* Проверить настройку сетевых параметров на устройстве | * Проверить настройку сетевых параметров на устройстве | ||
Строка 263: | Строка 277: | ||
* Если решить проблему самостоятельно не получилось, нужно предоставить [[DebugSmartPlayer|отладочную информацию]] приложения представителю SmartPlayer или на почту support@smartplayer.org. | * Если решить проблему самостоятельно не получилось, нужно предоставить [[DebugSmartPlayer|отладочную информацию]] приложения представителю SmartPlayer или на почту support@smartplayer.org. | ||
<!--T:35--> | |||
После удачного соединения с сервером, будет показан UI для регистрации устройства | После удачного соединения с сервером, будет показан UI для регистрации устройства | ||
[[Файл:Screenshot 20220727 233412.png|мини|центр]] | [[Файл:Screenshot 20220727 233412.png|мини|центр]] | ||
<!--T:36--> | |||
===<span id="GivePermissionMakeScreenshot">Выдача разрешений на снятие скриншота с видеоролика</span>=== | ===<span id="GivePermissionMakeScreenshot">Выдача разрешений на снятие скриншота с видеоролика</span>=== | ||
Если приложению не выданы привилегии, оно не сможет снять скриншот с видеоролика (ограничение безопасности на уровне операционной системы Android). Потребуется выдача разрешений вручном режиме на устройство, для этого: | Если приложению не выданы привилегии, оно не сможет снять скриншот с видеоролика (ограничение безопасности на уровне операционной системы Android). Потребуется выдача разрешений вручном режиме на устройство, для этого: | ||
Строка 280: | Строка 296: | ||
* В правом меню устройства нажать подпункт меню с названием - Настройки и '''включить''' "Режим киоска", который находится в секции "Безопасность". Сохранить измененные настройки устройства. | * В правом меню устройства нажать подпункт меню с названием - Настройки и '''включить''' "Режим киоска", который находится в секции "Безопасность". Сохранить измененные настройки устройства. | ||
<!--T:12--> | |||
== Запуск в вертикальной ориентации == | |||
SmartPlayer поддерживает вертикальную ориентации на части устройств. | SmartPlayer поддерживает вертикальную ориентации на части устройств. | ||
#Зайти в настройки приставки | #Зайти в настройки приставки | ||
Строка 287: | Строка 304: | ||
#Установить приложение SmartPlayer | #Установить приложение SmartPlayer | ||
<!--T:13--> | |||
== Режим киоска == | |||
SmartPlayer под Android поддерживает режим киоска. | SmartPlayer под Android поддерживает режим киоска. | ||
Строка 303: | Строка 321: | ||
*После этого приложение отключит режим киоска | *После этого приложение отключит режим киоска | ||
<!--T:16--> | |||
== Администрирование режима киоска == | |||
'''Выключение(Включение) режима киоска если устройство <span style="color:#008000">онлайн.</span>'''<br> | '''Выключение(Включение) режима киоска если устройство <span style="color:#008000">онлайн.</span>'''<br> | ||
В личном кабинете можно отключить через настройки “Режим киоска”. Настройка будет сохранена на сервере и следующий старт приложения уже будет без режима киоска. Выбрать устройство (группу устройств) -> платформу Android -> Режим киоска -> выбрать “Отключить“ -> Нажать на кнопку: “Сохранить изменения“ <br> | В личном кабинете можно отключить через настройки “Режим киоска”. Настройка будет сохранена на сервере и следующий старт приложения уже будет без режима киоска. Выбрать устройство (группу устройств) -> платформу Android -> Режим киоска -> выбрать “Отключить“ -> Нажать на кнопку: “Сохранить изменения“ <br> | ||
Строка 328: | Строка 347: | ||
#Далее необходимо настроить данную группу: Настройка → платформа Android → Синхронизировать контент → Да → Сохранить изменения | #Далее необходимо настроить данную группу: Настройка → платформа Android → Синхронизировать контент → Да → Сохранить изменения | ||
#Устройства должны иметь одинаковые прошивки для корректной работы режима | #Устройства должны иметь одинаковые прошивки для корректной работы режима | ||
#Допустимая задержка при синхронизации через Ethernet кабель - 100 м/с, через Wi-fi - 150 м/с. | |||
#В трансляции, которая проигрывается в режиме синхронизации обязательно должна быть одна страница | |||
<!--T:37--> | |||
==='''Особенности контента'''=== | ==='''Особенности контента'''=== | ||
*Плейлист у 2х разных трансляции при использовании режима видеостены должен быть равен по времени | *Плейлист у 2х разных трансляции при использовании режима видеостены должен быть равен по времени | ||
*У видео которые будут использоваться должен быть одинаковый FPS (количество кадров в секунду) | *У видео которые будут использоваться должен быть одинаковый FPS (количество кадров в секунду) | ||
*Синхронизация возможна только с видео файлами. В случае использования изображения его необходимо предварительно перевести в видеоформат с помощью встроенного видеоредактора | *Синхронизация возможна только с видео файлами. В случае использования изображения его необходимо предварительно перевести в видеоформат с помощью встроенного видеоредактора | ||
*Если пользователю необходимо синхронизировать видеоконтент, с учетом позиции видео, а не только по параметру "Время начала", то необходимо создать трансляцию с одной зоной. Внутри этой трансляции контент должен быть только в формате видео и располагаться друг за другом - в таком случае видеоконтент будет синхронизироваться по позиции видео. Во всех остальных случаях видеоконтент будет стартовать одновременно и внутри видеоконтентов позиции синхронизироваться не будут. | |||
*Видео в трансляциях должно быть одинаковым по времени. '''Пример'''. Две трансляции, суммарное время каждой 1 минута. Контент первой трансляции 2 видео по 30 секунд, контент второй трансляции 2 видео но так же 30 секунд. Если бы во второй трансляции было 2 видео, но видео 1 равно 10 секунд, видео 2 равно 50 секунд, то синхронизация бы отсутствовала. | *Видео в трансляциях должно быть одинаковым по времени. '''Пример'''. Две трансляции, суммарное время каждой 1 минута. Контент первой трансляции 2 видео по 30 секунд, контент второй трансляции 2 видео но так же 30 секунд. Если бы во второй трансляции было 2 видео, но видео 1 равно 10 секунд, видео 2 равно 50 секунд, то синхронизация бы отсутствовала. | ||
* Стандартные параметры ролика для видеостены: разрешение 1920х1080, частота кадров 25, кодек h264, контейнер .mp4, без аудиодорожки | * Стандартные параметры ролика для видеостены: разрешение 1920х1080, частота кадров 25, кодек h264, контейнер .mp4, без аудиодорожки | ||
Строка 349: | Строка 372: | ||
#После установки приложения SmartPlayer проверить Настройки - Домашнее приложение - там должен стоять стандартный launcher, а не SmartPlayer | #После установки приложения SmartPlayer проверить Настройки - Домашнее приложение - там должен стоять стандартный launcher, а не SmartPlayer | ||
<!--T:21--> | |||
== Производители Android TV == | |||
* Ugoos https://www.ugoos.ru/ | * Ugoos https://www.ugoos.ru/ | ||
* ShiningWorth http://www.shiningworth.com/ | * ShiningWorth http://www.shiningworth.com/ | ||
Строка 357: | Строка 381: | ||
== <span id="AndroidUpdateManual">Обновление клиентского приложения в ручном режиме</span> == <!--T:22--> | == <span id="AndroidUpdateManual">Обновление клиентского приложения в ручном режиме</span> == <!--T:22--> | ||
<!--T: | <!--T:38--> | ||
При работе приложения в обычном режиме, без привелегий, обновление клиентского приложения доступно только с участием пользователя. <br> | При работе приложения в обычном режиме, без привелегий, обновление клиентского приложения доступно только с участием пользователя. <br> | ||
1. Выкладываем на сервер новую версию приложения (обычно делает администратор)<br> | 1. Выкладываем на сервер новую версию приложения (обычно делает администратор)<br> | ||
Строка 363: | Строка 387: | ||
=='''Аппаратные ограничения платформы'''== | =='''Аппаратные ограничения платформы'''== | ||
На устройствах Android существуют следующие аппаратные ограничения: | На устройствах Android существуют следующие аппаратные ограничения: | ||
# Получение root-прав на устройстве открывает доступ к большему количеству возможностей взаимодействия с устройством | # Получение root-прав на устройстве открывает доступ к большему количеству возможностей взаимодействия с устройством | ||
# В зависимости от используемого устройства под управлением Android OS количество одновременно проигрываемых видео разнится. Данная функциональность зависит от используемых на устройствах декодерах | # В зависимости от используемого устройства под управлением Android OS количество одновременно проигрываемых видео разнится. Данная функциональность зависит от используемых на устройствах декодерах | ||
# Запрещено считывать MAC-адрес и IP - адрес устройства | |||
{{Note|Список аппаратных ограничений на устройствах под управлением Android OS всегда разный. Данная ситуация связана с тем, что каждый производитель устройства может разрешить или заблокировать возможность использовать функционал доступный на платформе Android OS.|warn}} | {{Note|Список аппаратных ограничений на устройствах под управлением Android OS всегда разный. Данная ситуация связана с тем, что каждый производитель устройства может разрешить или заблокировать возможность использовать функционал доступный на платформе Android OS.|warn}} | ||
=='''Воспроизведение контента с нестандартным разрешением на Android OS Приставок '''== | =='''Воспроизведение контента с нестандартным разрешением на Android OS Приставок '''== | ||
{{Note|Для приставок под управлением Android OS|warn}} | {{Note|Для приставок под управлением Android OS|warn}} | ||
Строка 394: | Строка 420: | ||
В открывшемся тулбаре пользователю необходимо выбрать блок "Настройки контента" и перейти в его раздел под названием "Android". | В открывшемся тулбаре пользователю необходимо выбрать блок "Настройки контента" и перейти в его раздел под названием "Android". | ||
[[File:Настройки_контента_android.png|thumb|center| Пример отображения блока "Настройки контента" и раздела "Android" в тулбаре |800px]] | [[File:Настройки_контента_android.png|thumb|center| Пример отображения блока "Настройки контента" и раздела "Android" в тулбаре |800px]] | ||
Открыв данный раздел пользователь получит доступ к настройкам пресетов для устройств. | Открыв данный раздел, пользователь получит доступ к настройкам пресетов для устройств. | ||
=== '''Список настроек''' === | === '''Список настроек''' === | ||
Блок работы с пресетами в разделе "Android" именуются как "Пресеты для стрима". | Блок работы с пресетами в разделе "Android" именуются как "Пресеты для стрима". | ||
Строка 406: | Строка 432: | ||
{{Note|По умолчанию остальные настройки в блоке "Пресеты для стрима" заблокированы для любого именного пресета. Вариант "ручные настройки" открывают доступ к настройкам расположенным ниже|warn}} | {{Note|По умолчанию остальные настройки в блоке "Пресеты для стрима" заблокированы для любого именного пресета. Вариант "ручные настройки" открывают доступ к настройкам расположенным ниже|warn}} | ||
==== '''Подробнее о ручных настройках''' ==== | ==== '''Подробнее о ручных настройках''' ==== | ||
В режиме "Ручных настроек" пользователь получает доступ ко всем настройкам расположенным ниже, а именно: | В режиме "Ручных настроек" пользователь получает доступ ко всем настройкам, расположенным ниже, а именно: | ||
# Поверхность отрисовки потока - позволяет выбрать возможности отрисовки со стороны производителя устройства. Доступно три варианта: surface - самый простой и легковесный вариант отрисовки для системы вариант; textures - более тяжелый вариант отрисовки для системы, позволяющий лучше обрабатывать графику, на мощных приставках; vlc_layout - совмещаем в себе оба решения и автоматически применяет подходящее с учетом параметров плеера и мощности устройства | # Поверхность отрисовки потока - позволяет выбрать возможности отрисовки со стороны производителя устройства. Доступно три варианта: surface - самый простой и легковесный вариант отрисовки для системы вариант; textures - более тяжелый вариант отрисовки для системы, позволяющий лучше обрабатывать графику, на мощных приставках; vlc_layout - совмещаем в себе оба решения и автоматически применяет подходящее с учетом параметров плеера и мощности устройства | ||
# Настройки VLC - позволяет вручную прописать настройки для vlc-плеера. Подробная информация о том, как правильно указать настройки вручную для vlc можно просмотреть по следующим ссылкам: [https://wiki.videolan.org/Documentation:User_Guide/ ссылка 1], [https://wiki.videolan.org/Documentation:Command_line/ ссылка 2], [https://wiki.videolan.org/Documentation:Advanced_Use_of_VLC/ ссылка 3 ]. | # Настройки VLC - позволяет вручную прописать настройки для vlc-плеера. Подробная информация о том, как правильно указать настройки вручную для vlc можно просмотреть по следующим ссылкам: [https://wiki.videolan.org/Documentation:User_Guide/ ссылка 1], [https://wiki.videolan.org/Documentation:Command_line/ ссылка 2], [https://wiki.videolan.org/Documentation:Advanced_Use_of_VLC/ ссылка 3 ]. | ||
# Чекбокс/галочка по возможности использовать ExopPlayer - позволяет использовать ExoPlayer для проигрывания стрим-потока. Наиболее часто используется для потоков: rtp, rtsp, udp и hls. | # Чекбокс/галочка по возможности использовать ExopPlayer - позволяет использовать ExoPlayer для проигрывания стрим-потока. Наиболее часто используется для потоков: rtp, rtsp, udp и hls. | ||
После завершения всех настроек пользователю необходимо нажат на кнопку "Сохранить" посреди экрана и завершать настройку трансляции для проигрывания на устройстве. | |||
== '''Вывод QR-кода и кода регистрации на устройства с маленьким экраном''' == | |||
Для того, чтобы корректно отображать QR-код и код регистрации на устройствах с маленьким экраном, было решено изменить расположение данных кодов на экране.<br> | |||
В текущей реализации код регистрации был смещен в левый верхний угол и прописывается в нем мелким шрифтом, а QR - код был перемещен в центр экрана. | |||
[[File:Изменение_отображения android.png|thumb|center| Пример нового отображений кода регистрации и QR - кода для регистрации устройств в личном кабинете SmartPlayer |800px]] | |||
{{Note|Если пользователю все равно остается неудобен такой способ регистрации, то на платформе SmartPlayer есть альтернативный вариант. Существует функциональность позволяющая зарегистрировать устройство другим способом. Это функциональность называется "Черновики". Подробнее в статье - [[Функциональность "Черновики" для устройств]].|warn}} | |||
</translate> | </translate> |
Текущая версия от 09:04, 11 ноября 2024
Минимальные требования
- Операционная система: Android 5.0 и выше (уровень API: 21 и выше);
- Наличие сетевого интерфейса (WiFi или Ethernet);
- Оперативная память: 1 гб и выше;
- Flash память (жесткий диск): от 8 гб.
Рекомендуемые требования
- Операционная система: Android 7.0 и выше (уровень API: 24 и выше);
- Наличие сетевого интерфейса (WiFi или Ethernet);
- Оперативная память: 2 гб и выше;
- Flash память (жесткий диск): от 16 гб.
Приставки на Android OS (Android Smart TV)
Важно! Если приставки нет в рекомендуемых, свяжитесь, пожалуйста, с представителями SmartPlayer и проконсультируйтесь по совместимости и поддерживаемой функциональности
Наименование приставки | Перезагрузка | Обновление приложения | Скриншот с видеоролика | Установка времени (тайм-зоны) | Работа 24/7 | Наличие root доступа | WiFi 2,4 / 5 ГГц | Отключение автоматического обновления прошивки | Удаление лишниx приложений | Рекомендовано SmartPlayer | Дополнительно |
Ugoos X4 Box Family Series (Cube, Pro, Plus) | Да | Да | Да | Да | Да | Да | Да/Да | В разработке | В разработке | Да
|
Яндекс.Маркет, Amazon
|
Ugoos X3 Box Family Series (Cube, Pro, Plus) | Да | Да | Да | Да | Да | Да | Да/Да | В разработке | В разработке | Да
|
Яндекс.Маркет, Amazon |
Ugoose AM3 2Gb/16Gb | Да | Да | Да | Да | Да | Да | Да/Да | В разработке | В разработке | Да (в качестве профессионального решения)
|
Яндекс.Маркет |
Исключения Приставки от производителя Harper имеют проблемы с выбором ориентации. Данная проблема связана с особенностями прошивки. Прошивка поддерживает только горизонтальную ориентацию. Сейчас ведётся работа с производителем для решения данной проблемы.
Подробное описание возможностей
- "Перезагрузка" - перезагрузка устройства физически. Приложение SmartPlayer запустится автоматически после запуска операционной системы.
- "Обновление приложения" - с развитием клиентского приложения, компания SmartPlayer выпускает обновления для своего приложения, в котором могут быть исправлены ошибки, добавлена новая функциональность. Данная функция позволит обновить клиентское приложения удаленно, без физического участия администратора на точке установки устройства.
- "Скриншот с видеоролика" - позволяет снять снимок экрана устройства, когда оно проигрывает видеоролик. Данная функция относится только к видеороликам, если вы планируете показывать только картинки, скриншот будет получен с любого устройства.
- "Установка времени (тайм-зоны)" - в приставках, нет батарейки которая отвечает за внутренние часы устройства, в связи с чем приложение поддерживает актуальное время на приставки. Если у приставки есть выход в сеть интернет, то это функция неактуальная, она важна только в закрытых сетях (без выхода в сеть интернет)
- "Работа 24/7" - приставка работае 24 часа 7 дней в неделю.
- "Наличие root доступа" - это суперпользователь на приставки, у которого есть права на изменения системных настроек.Наличие root доступа, позволяет администрировать устройство приложению SmartPlayer без ограничений. Root доступ предоставляют производители приставок.
- "WiFi 2,4 / 5 ГГц" - WiFi может работать в двух диапозонах, обычно сети 5 ГГц менее загружены, что позволяет достигнуть более стабильного состояния сети
- "Отключение автоматического обновления прошивки" - производители выпускают обновления прошивки (операционной системы) для своих устройств, это функция позволяет администратору системы контролировать, когда будет произведено обновление.
- "Удаление лишниx приложений" - по-умолчанию производители приставок, устанавливают множество приложений. Некоторые приложения, могут делать нотификацию и мешать проигрыванию контента, при наличии этой функции SmartPlayer скроет ненужные приложения с приставки.
- "Рекомендовано SmartPlayer" - это значит, что приставка прошла тестирование в компании SmartPlayer и рекомендована для организации DigitalSignage проектов
- "Где купить" - магазины, где можно купить приставку.
P.s. Все вышеперечисленные сведения являются результатом тестирования компании SmartPlayer. Даже одна модель может отличаться от партии к партии.
P.s. По-умолчанию поддерживаются все устройства начиная с версии Android 5.0.
Последние прошивки для TV BOX: https://chinagadgetsreviews.com/firmwares
Режимы работы приложения SmartPlayer на устройстве
Приложение на устройстве может иметь разные привилегии, в зависимости от этого можно управлять устройством
- Обычный - по умолчанию при установки приложения SmartPlayer на любое устройство с Android 5.0 и выше.
- Device Owner - выдается с помощью настроек разработчика установщиком приложения. Если на устройстве есть root доступ, приложение SmartPlayer автоматически повысит себе права до Device Owner.
- Signature - производитель прошивки, подписывает приложение ключом подписи от прошивки устройства. SmartPlayer предоставляет сборку без подписи, далее она подписывается производителем прошивки и при установки приложения на устройство оно получает привилегии по работе с операционной системой.
- Root - суперпользователь доступный для приложения, самый высокий уровень доступа для приложения. Root предоставляется производителем прошивки, обычно это устройства без сертификации Google.
- Интеграция с SDK производителя устройства - Некоторые производители Android OS устройств предоставляют свой SDK, который позволяет делать управление устройством в обход классической модели. Интеграция с SDK всегда требует времени, так как: необходимо получать ключи на интеграцию и дорабатывать приложение в условиях которые каждый производитель определяет самостоятельно.
Производитель устройства | Наличие интеграции | Режим работы |
---|---|---|
Phillips (проф. серия) | Да | Информация по интеграции |
Phillips (коммерческие) | Да | Информация по интеграции |
Samsung (KNOX) | Да | Интеграция с SDK производителя устройства |
TCL | Нет | Попытки запросить SDK у производителя по горячей линии, не дали результата. Готовы интегрироваться при наличии SDK у производителя. Настройка |
BenQ (проф. серия) | Да | Signature |
Xiaomi | Нет | Попытки запросить SDK у производителя по горячей линии, не дали результата. Готовы интегрироваться при наличии SDK у производителя. |
HIKVISION | Да | DeviceOwner. Интеграция с SDK в процессе выполнения. |
Все настройки вы можете сделать в ручном режиме, но обычно это неудовлетворяет потребностям b2b сектора. В таблице ниже представлены возможности приложения без участия пользователя на точке (администрирование через личный кабинет SmartPlayer).
Команда | Обычный | Device Owner | Signature | Root |
---|---|---|---|---|
Перезагрузка устройства | Нет | Да (c Android 7.0 и выше) | Да | Да |
Скрыть(показать) все системные launchers | Нет | Нет | Нет | Да |
Выключить устройство | Нет | Нет | Нет | Да |
Изменить ориентацию устройства | Да (на уровне приложения) | Да (на уровне приложения) | Да (на уровне системных настроек) | Да (на уровне системных настроек) |
Установить время и дату | Нет | Да (c Android 9.0 и выше) | Да | Да |
Установка тайм-зоны | Нет | Да (c Android 9.0 и выше) | Да | Да |
Установка сторонних приложения | Нет | Нет | Нет | Да |
Установка звука | Да | Да | Да | Да |
Обновление приложения SmartPlayer с сервера | Нет | Да | Да | Да |
Кто и какой режим может выдать приложению.
Кто может дать доступ | Обычный | Device Owner | Signature | Root |
---|---|---|---|---|
Интегратор | Да | Да | Нет | Нет |
Разработчик прошивки | Да | Да | Да | Да |
Плюсы и минусы работы приложения в разных режимах.
Режим работы приложения | Минусы (-) | Плюсы (+) |
---|---|---|
Обычный |
|
|
Device Owner |
|
|
Signature |
|
|
Root |
|
|
Выдача режима Device Owner (Владелец устройства). Данный функционал есть на AndroidOS. AndroidOS TV не поддерживает.</>
Для включения режима “владелец устройства” потребуется подключение к устройству через ADB (Android Device Bridge). После установки соединения (через провод или по wifi без разницы). Для включения через провод, нужно активировать режим разработчика, для этого нужно: 7 раз нажать на название билда (или сборки), потом откроются настройки разработчика, где нужно включить опцию “Отладка по USB” и включить режим USB в MTP, по умолчанию ставится режим “Зарядка”, который не позволяет подключаться к девайсу. Если выбран путь подключения через WIFI то нужно на девайсе открыть порт 5555, через терминальную команду, сам терминал можно скачать из Google Play.
После подключения, проверяем девайс, командой:
$ adb devices
Должен быть вывод, аналогичный следующему:
Включаем “Владельца девайса”.
Для production сборки:
$ adb shell dpm set-device-owner org.smartplayer.android.client/co.displaysolutions.digitalsignage.SPAdminReceiver
Для development сборки:
$ adb shell dpm set-device-owner org.smartplayer.client.develop/co.displaysolutions.digitalsignage.SPAdminReceiver
Если все пройдет успешно, adb напишет, что теперь владелец девайса - приложение SmartPlayer. После этого нужно перезапустить приложение (один раз) для активации приложение режима киоска.
На устройстве может быть только одно приложение в режиме “владелец устройства”. Сбросить “владельца устройства” можно только скинув устройство к заводским настройкам (Settings > Backup & Reset > Factory data reset)
== Установка клиентского приложения на телефон (планшет)
Скачать приложение на устройство, использую полученную ссылку.
Запустить apk файл.
При появлению уведомления нажать "Настройки"
Включить "Неизвестные источники"
В целях безопасности выбрать "Разрешить только эту установку". Нажать ОК.
Выбрать "Установить"
Дождаться завершения установки
Нажать "Открыть"
Дождаться появления PIN-кода. Ввести PIN-код в личном кабинете.
Решения и настройка в нестандартных ситуациях
Установка приложения из apk файла
Если при установке появляется ошибка (может быть различный текст) и не появляется окно для разрешения установки из неизвестных источников. Сделать следующее:
- Android 5.0+ и до 8.0 (Android Oreo). Настройки -> Экран блокировки и защита -> Неизвестные источники -> (далее смотрите инструкцию выше)
- Android 8.0+ Настройки -> Приложения -> Дополнительные настройки (... в правом верхнем угле) -> Особые права доступа -> Установка неизвестных приложений -> Разрешить установку для необходимых приложений
- При установке возможно появление сообщения there was a problem parsing the package (ошибка при синтаксическом анализе пакета). Это означает что клиентское приложение недокаченно, или при его загрузки возникли ошибки на носители.
Регистрация устройства (первый запуск)
При регистрации устройства данные по 9 значному коду должны быть получены с сервера SmartPlayer. Если связи с сервером нет, будет показана ошибка вида
Данная ошибка говорит о том, что не удается соединиться с сервером. Адрес сервера указан в описании ошибки, решения:
- Проверить настройку сетевых параметров на устройстве
- Проверить доступность URL сервера с устройства, вбив в любом браузере строку которая описана в ошибке. В нашем случае это https://jenkins.smartplayer.org. Должен быть доступен сервер SmartPlayer, если он доступн браузером будет отображен UI
- Если сервер в бразере доступен, а соединение так же не проходит. В корпоративных сетях может использоваться прокси для модификации пакетов по сети, отключите его.
- Если решить проблему самостоятельно не получилось, нужно предоставить отладочную информацию приложения представителю SmartPlayer или на почту support@smartplayer.org.
После удачного соединения с сервером, будет показан UI для регистрации устройства
Выдача разрешений на снятие скриншота с видеоролика
Если приложению не выданы привилегии, оно не сможет снять скриншот с видеоролика (ограничение безопасности на уровне операционной системы Android). Потребуется выдача разрешений вручном режиме на устройство, для этого:
- Выбрать (нажав на плитку в разделе устройства) целевое устройство в личном кабинете
- В правом меню устройства нажать подпункт меню с названием - Настройки и отключить "Режим киоска", который находится в секции "Безопасность". Сохранить измененные настройки устройства.
- В правом меню устройства нажать подпункт меню с названием - Разрешения (см. скриншот)
- После нажатия будет показано окно, с выдачей разрешений. Нажмите кнопку разрешить, напротив "Разрешение на снятие скриншота:"
- После нажатия на кнопку "Разрешить", на устройстве будет показано системное диалоговое окно в котором нужно поставить галочку (Не показывать снова) и разрешить приложению захватывать экран устройства
- Проверить, что разрешения выданы. Запустить видеоролик и попробовать снять скриншот через личный кабинет
- В правом меню устройства нажать подпункт меню с названием - Настройки и включить "Режим киоска", который находится в секции "Безопасность". Сохранить измененные настройки устройства.
Запуск в вертикальной ориентации
SmartPlayer поддерживает вертикальную ориентации на части устройств.
- Зайти в настройки приставки
- Настройки изображения
- Выбрать пункт rotating screen
- Установить приложение SmartPlayer
Режим киоска
SmartPlayer под Android поддерживает режим киоска.
При включенном режиме киоска, пользователь не может покинуть приложение и отключены следующие возможности:
- не работаю нажатия с пульта (для приставок с Android).
- не работает кнопка home приложение автоматически перезапускается через 100 ms
- приложение скрывает все диалоги которые появляются, поверх приложения
Отключение режима киоска
- Переместить мышку в правый верхний угол
- Зажать левую кнопку мышки на 5 секунд
- Ввести код 95224
- После этого приложение отключит режим киоска
Администрирование режима киоска
Выключение(Включение) режима киоска если устройство онлайн.
В личном кабинете можно отключить через настройки “Режим киоска”. Настройка будет сохранена на сервере и следующий старт приложения уже будет без режима киоска. Выбрать устройство (группу устройств) -> платформу Android -> Режим киоска -> выбрать “Отключить“ -> Нажать на кнопку: “Сохранить изменения“
Аналогичный образом происходит включение режима киоска через личный кабинет. Выбрать устройство (группу устройств) -> платформу Android -> Режим киоска -> выбрать “Включить“ -> Нажать на кнопку: “Сохранить изменения“
Выключение режима киоска если устройства оффлайн.
С пульта
На пульте нужно выполнить следующую комбинацию клавиш в течение 7 секунд с пульта: ENTER -> BACK ->BACK->LEFT
С подключенной мышкой к устройству
Долгое нажатие курсором мышки в верхнем правом углу (200x200 пискелей область), после чего покажется диалоговое окно, где нужно ввести пароль в течении 15 секунд, пароль: 95224
С отключением режима киоска по тач событию
Долгое нажатие пальцем в верхнем правом углу (200x200 пискелей область), после чего покажется диалоговое окно, где нужно ввести пароль в течении 15 секунд, пароль: 95224
После отключения режима киоска, приложение покажет список доступных Launcher приложений, которые можно использовать для выхода с приложения. Диалог с выбором автоматически уберется через пять секунд. При выключенном режиме киоска кнопка BACK/HOME работает в обычном режиме делая выход из приложения.
Включение режим киоска оффлайн.
Включение режима киоска в режиме оффлайн происходит аналогично отключению, при долгом нажатии (мышкой или пальцем) в правом верхнем углу (200x200 пискелей область). При включении будет показано сообщение, что режим киоска включен.
Проигрывание контента в режиме синхронизации
Требования для корректной работы режима синхронизации
- Устройства должны быть подключены к RJ45 и быть в одной сети.
- Создать группу устройств, и переместить в нее устройства на которых требуется синхронизация контента
- Далее необходимо настроить данную группу: Настройка → платформа Android → Синхронизировать контент → Да → Сохранить изменения
- Устройства должны иметь одинаковые прошивки для корректной работы режима
- Допустимая задержка при синхронизации через Ethernet кабель - 100 м/с, через Wi-fi - 150 м/с.
- В трансляции, которая проигрывается в режиме синхронизации обязательно должна быть одна страница
Особенности контента
- Плейлист у 2х разных трансляции при использовании режима видеостены должен быть равен по времени
- У видео которые будут использоваться должен быть одинаковый FPS (количество кадров в секунду)
- Синхронизация возможна только с видео файлами. В случае использования изображения его необходимо предварительно перевести в видеоформат с помощью встроенного видеоредактора
- Если пользователю необходимо синхронизировать видеоконтент, с учетом позиции видео, а не только по параметру "Время начала", то необходимо создать трансляцию с одной зоной. Внутри этой трансляции контент должен быть только в формате видео и располагаться друг за другом - в таком случае видеоконтент будет синхронизироваться по позиции видео. Во всех остальных случаях видеоконтент будет стартовать одновременно и внутри видеоконтентов позиции синхронизироваться не будут.
- Видео в трансляциях должно быть одинаковым по времени. Пример. Две трансляции, суммарное время каждой 1 минута. Контент первой трансляции 2 видео по 30 секунд, контент второй трансляции 2 видео но так же 30 секунд. Если бы во второй трансляции было 2 видео, но видео 1 равно 10 секунд, видео 2 равно 50 секунд, то синхронизация бы отсутствовала.
- Стандартные параметры ролика для видеостены: разрешение 1920х1080, частота кадров 25, кодек h264, контейнер .mp4, без аудиодорожки
- Все видеоролики должны быть одного разрешения в плейлисте, который синхронизируется
- Одинаковый FPS у всех видеороликов в плейлисте, который синхронизируется
- Одинаковый битрейт у всех видеороликов в плейлисте, который синхронизируется
- Наличие (или отсутствие) аудиодорожки у всех видеороликов в плейлисте, который синхронизируется
Настройка телефона в режиме открытой выкладки
- Настроить сеть интернет на телефоне.
- Проверить доступность новой прошивки на телефон (Настройки - Система - Обновление системы). Если есть новая прошивка, обновить её.
- Отключить режим блокировки у телефона. (Настройки - Безопасность - Блокировка эрана - Нет)
- После установки приложения SmartPlayer проверить Настройки - Домашнее приложение - там должен стоять стандартный launcher, а не SmartPlayer
Производители Android TV
- Ugoos https://www.ugoos.ru/
- ShiningWorth http://www.shiningworth.com/
- Zidoo https://www.zidoo.tv/
- TCL https://www.tcl.com
Обновление клиентского приложения в ручном режиме
При работе приложения в обычном режиме, без привелегий, обновление клиентского приложения доступно только с участием пользователя.
1. Выкладываем на сервер новую версию приложения (обычно делает администратор)
2. Далее по документу Ручное обновление SmartPlayer
Аппаратные ограничения платформы
На устройствах Android существуют следующие аппаратные ограничения:
- Получение root-прав на устройстве открывает доступ к большему количеству возможностей взаимодействия с устройством
- В зависимости от используемого устройства под управлением Android OS количество одновременно проигрываемых видео разнится. Данная функциональность зависит от используемых на устройствах декодерах
- Запрещено считывать MAC-адрес и IP - адрес устройства
Воспроизведение контента с нестандартным разрешением на Android OS Приставок
Для начала работы с нестандартным по разрешению контентом на приставке под управление Android OS, пользователю изначально необходимо авторизоваться в личном кабинете.
Далее ему необходимо зайти в раздел личного кабинета "Трансляции" и перейти в категорию "Создать".
Следующим шагом пользователю необходимо создать трансляцию с любым вариантом ориентации: вертикальной или горизонтальной. Данный параметр зависит от настроек приставки. Справа внизу для применения настроек пользователю необходимо нажать кнопку "Сохранить".
После описанных выше действий пользователь должен создать зону трансляции нажав на специальную иконку.
В процессе выбора зоны пользователю откроется тулбар справа, в которому можно будет указать параметры размеры зоны в пикселях. В строках "Ширина" и "Высота" пользователь должен указать нужные значения размера прописав их цифрами.
Выставив параметры "Ширина" и "Высота" пользователь должен выбрать необходимы для проигрывания контент. Данное действие также делается в тулбаре справа.
Последним шагом для пользователя будет - установка трансляции на устройство. Все проделанные ранее действия приведут пользователю к корректному воспроизведению контента с нестандартным разрешением на устройствах под управлением Android OS.
Предустановленные настройки для медиа-потоков
В связи с большим количеством производителей с приставками под управлением Android OS, которые делают свои устройства индивидуальными даже внутри одной компании, часто возникают проблемы с воспроизведением контента. Чтобы во многом решить данные проблемы в процессе создания трансляции пользователь может использовать готовые пресеты настроек для устройства.
Алгоритм действий
Чтобы пользователь смог взаимодействовать с пресетами ему необходимо авторизоваться в личном кабинете и найти раздел "Трансляции". В разделе "Трансляции" необходимо выбрать категорию "Создать".
Следующим шагом пользователю необходимо создать зону для контента в трансляции с помощью специальной иконки.
Далее пользователю необходимо выбрать из списка контент в виде медиа-потока, который у него добавлен в личный кабинет.
Добавив медиа-поток в зону трансляции пользователю необходимо еще раз нажать на контент в зоне трансляции чтобы изменить отображение настроек в тулбаре справа с параметрами трансляции.
В открывшемся тулбаре пользователю необходимо выбрать блок "Настройки контента" и перейти в его раздел под названием "Android".
Открыв данный раздел, пользователь получит доступ к настройкам пресетов для устройств.
Список настроек
Блок работы с пресетами в разделе "Android" именуются как "Пресеты для стрима".
В этом блоке доступна для изменения только одна настройка - "Тип пресета". Данная настройка позволяет выбрать из четырех видов пресетов:
- NetUP
- Ugoos 1
- Ugoos 2
- Ручные настройки
Подробнее о ручных настройках
В режиме "Ручных настроек" пользователь получает доступ ко всем настройкам, расположенным ниже, а именно:
- Поверхность отрисовки потока - позволяет выбрать возможности отрисовки со стороны производителя устройства. Доступно три варианта: surface - самый простой и легковесный вариант отрисовки для системы вариант; textures - более тяжелый вариант отрисовки для системы, позволяющий лучше обрабатывать графику, на мощных приставках; vlc_layout - совмещаем в себе оба решения и автоматически применяет подходящее с учетом параметров плеера и мощности устройства
- Настройки VLC - позволяет вручную прописать настройки для vlc-плеера. Подробная информация о том, как правильно указать настройки вручную для vlc можно просмотреть по следующим ссылкам: ссылка 1, ссылка 2, ссылка 3 .
- Чекбокс/галочка по возможности использовать ExopPlayer - позволяет использовать ExoPlayer для проигрывания стрим-потока. Наиболее часто используется для потоков: rtp, rtsp, udp и hls.
После завершения всех настроек пользователю необходимо нажат на кнопку "Сохранить" посреди экрана и завершать настройку трансляции для проигрывания на устройстве.
Вывод QR-кода и кода регистрации на устройства с маленьким экраном
Для того, чтобы корректно отображать QR-код и код регистрации на устройствах с маленьким экраном, было решено изменить расположение данных кодов на экране.
В текущей реализации код регистрации был смещен в левый верхний угол и прописывается в нем мелким шрифтом, а QR - код был перемещен в центр экрана.