Обнаружение устройств Chromecast с помощью Android MediaRouter API

Обнаружение устройств Chromecast с помощью API-интерфейсов Android MediaRouter не работает должным образом с последней библиотекой поддержки mediarouter (версия 19) и сервисами Google Play версии 4.2.43.

Я использую пример приложения Cast Hello Text для решения этой проблемы. Его можно найти здесь: https://github.com/googlecast/CastHelloText-android.

У меня есть устройство Chromecast, подключенное к телевизору и находящееся в той же сети, что и устройство Android (Sender).

  1. Приложение открывается и находит устройство Chromecast. Я переопределяю некоторые из соответствующих методов MediaRouter.Callback, поэтому я вижу вызов onRouteAdded().
  2. Позже я отключаю устройство от телевизора. Я ожидаю получить событие onRouteRemoved(). Но этого никогда не происходит.
  3. Приложение по-прежнему отображает значок трансляции. При выборе устройства на значке приведения приложение пытается подключиться к устройству и терпит неудачу. Теперь я получаю события onRouteUnSelected() и onRouteRemoved(), и значок приведения исчезает.
  4. При повторном подключении устройства к моему телевизору и после того, как устройство отображает домашний экран, я ожидаю получить событие onRouteAdded(). Я не получаю это событие даже после ожидания в течение нескольких минут.

Это работало, как и ожидалось, в библиотеке mediarouter версии 17 и с предварительной версией Google Cast SDK.

Так что-то изменилось с точки зрения того, когда эти события запускаются? Как правильно узнать, когда устройство Chromecast добавлено, а когда удалено? Я планирую использовать собственный пользовательский интерфейс с API-интерфейсами MediaRouter для отображения значка приведения и списка устройств.


person Droid_9    schedule 09.03.2014    source источник


Ответы (1)


В последней версии служб Android SDK/Play есть ошибка, которая вызывает поведение, которое вы видите. Это будет исправлено в следующем выпуске SDK и сервисов Google Play.

person Ali Naddaf    schedule 10.03.2014
comment
Хорошо знать. Спасибо! - person Droid_9; 10.03.2014
comment
Это уже исправлено? - person scheibk; 05.05.2014
comment
Нет, мы еще не выпустили новые сервисы Google Play. - person Ali Naddaf; 05.05.2014
comment
Это исправлено в 10.2.0? - person Anas Azeem; 15.03.2017