Как стать автором
Обновить

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение

Время на прочтение12 мин
Количество просмотров13K
Всего голосов 18: ↑18 и ↓0+18
Комментарии9

Комментарии 9

существует ли эмулятор для настольного компа или планшета, поддерживающий современную версию api chromecast? добавить поддержку chromecast желание есть, а железки нет.
Я пытался найти эмулятор, но все варианты были в очень устаревшем состоянии. А официальных реализаций не существует. Можно попробовать запустить эмулятор Android TV. Но самое простое — купить ChromeCast за 35$.
Можно попробовать запустить несколько образов android в разных virtualbox и настроить сеть (virtualbox как пример)
Можно попробовать сделать так. Да. Но среди них нужен Android TV, потому что сам Android не умеет выступать в роли Cast-приемника
У меня ругается на платёжный аккаунт. С Российским платёжным аккаунтом Chromecast-устройство зарегистрировать невозможно?
Насколько я помню, Google работать с российскими платежными аккаунтами. Но зарегистрировать новый на USA — дело пяти минут :)
Зарегал USA, так и пишет ошибку (
Эту покупку нельзя совершить в стране, указанной в вашем аккаунте Google Payments. Перейдите в настройки и внесите изменения… Код ошибки: OR-FGIA-02.

Может кто-нибудь сталкивался с такой проблемой?
Интересно услышать подробности про Media Router Framework. Отличная статья, спасибо.
Добрый день, спасибо за статью. Пытаюсь добавить поддержку трансляции на телевизор в свое приложение, убил несколько дней, но не получается.

Тестовые устройства:
— Самсунг СмартТВ QLED
— Телефон Xiaomi Mi MIX 8 с Андроидом 8
— Планшет Samsung с Андроидом 7

1. Для начала я бы хотел обойтись простым MediaRouter API без необходимости встраивать в приложение ключи разработчика. Это возможно вообще? Чем отличаются «wireless display» от «chrome cast device» на диаграмме? Для работы с хром-каст устройствами нужен ключ разработчика, а для беспроводных дисплеев нет?

2. Телевизор Самсунг определяется как «Беспроводной дисплей» (TV Samsung Q9 Series (65)) и я могу подключиться к нему через настройки смартфона и транслировать на него экран телефона целиком.
— На планшете такой системной настройки нет, но я могу подключиться к нему из приложения YouTube Kids.

3. Встроил в приложение кнопку androidx.mediarouter.app.MediaRouteButton (и еще добавил в меню)
— в меню она просто не появляется, в варианте MediaRouteButton отображается неактивной
— mediaRouter.getRoutes() возвращает один рут (который default route и он не телевизор)
— вызываю mediaRouteBtn.showDialog() по другой кнопке, появляется диалог выбора устройства для трансляции и в нем телевизора нет (в диалоге крутится прогресс с поиском и никогда не заканчивается).

4. Но! Если на телефоне я подключаюсь к дисплею через системные настройки, кнопка становится активной и появляется та, которую я добавлял в меню! В списке mediaRouter.getRoutes() появляется еще один путь — этот самый телевизор. При этом если вызвать диалог mediaRouteBtn.showDialog(), то там видно подключенный телевизор и есть опция отключиться от него. Одна проблема — нафига она нужна, если я и так уже подключен к дисплею.
— На планшете глобального способа подключиться к телевизору не нашел, поэтому на нем такой вариант не работает.

Попоробовал еще поставить тестовое приложение отсюда:
codelabs.developers.google.com/codelabs/cast-videos-android/index.html?index=..%2F..index#2

Не показывает кнопку ни на смартфоне, ни на планшете.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий