Бывает что сели батарейки в пульте управления , хочется создать свой пульт для управления устройствами или вообще задействовать запуск приложений в своих автоматизациях на anandroid или android Tv, тогда можно для этого использовать данную инструкцию.
Во первых нам нужно подключить управление устройством к home assistant:
открываем в настройках устройства параметры разработчика и включаем "Отладка ADB"
Далее перейдите к своему экземпляру Home Assistant.
Откройте «Настройки» > «Устройства и службы» .
В правом нижнем углу выберите значок Кнопка «Добавить интеграцию» .
В списке выберите Android Debug Bridge .
Следуйте инструкциям на экране, чтобы завершить настройку. (Вам нужно будет ввести адрес устройства в вашей сети и подтвердить отладку на экране вашего android устройства)
В результате у Вас появится интеграция Android Debug Bridge с устройством к примеру media_player.bedroomtvconsole
На данном этапе Вы уже можете управлять устройством но действий довольно мало вкл/выкл, звук и т.д.
А вот для запуска нужного нам приложения, нужно найти его название в системе тут несколько вариантов, вот пара:
Или запустите приложение сами и в статусе объекта вашего ADB устройства в hass появится его название типа: org.xbmc.kodi
Или на самом устройстве откройте с помощью файлового менеджера папку Android>data там папки с установленными приложениями вот имя соответствующей папки и будет название приложения.
Далее в hass открываем панель разработчика>службы и вызываем службу, не забывая заменить имя приложения (в 3 местах) и объект вашего ADB устройства :
service: androidtv.adb_command
data:
command: >-
adb shell pm dump org.xbmc.kodi | grep -A 1 "MAIN" | grep
org.xbmc.kodi | awk '{print $2}' | grep org.xbmc.kodi
target:
entity_id: media_player.bedroomtvconsole
Переходим в панель разработчика>состояния и находим media_player.bedroomtvconsole
и в первой строке будет запись примерно такого вида: adb_response: org.xbmc.kodi/.Splash
вот "org.xbmc.kodi/.Splash" и искомые нами данные для запуска.
Используем их для запуска приложения:
service: androidtv.adb_command
data:
command: ' am start -a android.intent.action.VIEW -n org.xbmc.kodi/.Splash'
target:
entity_id: media_player.bedroomtvconsole
Если Вы все сделали верно то приложение запустится.
Ну и для создания пульта рекомендую интеграцию Android TV Remote Card
в ней добавляете свою кнопку таким путем:
custom_actions:
kodi:
icon: mdi:kodi
tap_action:
action: call-service
service: androidtv.adb_command
data:
command: ' am start -a android.intent.action.VIEW -n org.xbmc.kodi/.Splash'
target:
entity_id:
- media_player.bedroomtvconsole