Работя върху интегрирането на Google Chromecast
в едно от моите Android
приложения. За това имам предвид примери за Google Cast.
Използвам CastCompanionLibrary-android - CCL и за да разбера как да го използвам, имам предвид Cast примерни видеоклипове. Тази проба обаче показва как да използвате бутона за предаване с ActionBar
.
Въпросът ми е как да използвам тази библиотека, ако трябва да използвам MediaRouteButton
в персонализираното си оформление? На кои места трябва да направя промените?
Дейността ми продължава FragmentActivity
.
Забележка: Прегледах pdf документа, предоставен с библиотеката, но не намерих много информация за това как да използвам библиотеката с MediaRouteButton
.
Всяка помощ се оценява.
АКТУАЛИЗАЦИЯ:
Стъпка 1: Получавам екземпляр VideoCastManager
.
Стъпка 2: Получавам MediaRouteButton от персонализираното си оформление и го добавям към екземпляр VideoCastManager
.
Стъпка 3 : Внедряване на onCastDeviceDetected()
,onCastAvailabilityChanged()
,onApplicationConnected()
, onApplicationDisconnected()
и onDisconnected()
методи на VideoCastConsumerImpl
методи на слушател. След това добавяне на този слушател към VideoCastManager
екземпляр.
Стъпка 4: В onApplicationConnected()
извиквам loadRemoteMedia()
чрез предаване на текущата позиция на лентата за търсене.
Но не работи. Видеокастингът никога не започва.
АКТУАЛИЗАЦИЯ 2:
Следват регистрационните файлове, които получавам, когато опитам URL адреса на Cast в примерното приложение за Cast video.
Състояние на приложението: Заредено. Стартирано. Готово
Брой сесии: 2
Състояние на медийния елемент: В застой
Съобщение на диспечера на приемника за предаване: Подателят е свързан: { ДРУГИ ДАННИ}
Съобщение на Media Manager: ЗАРЕДЕТЕ {ДРУГИ ДАННИ}
Медиен протокол: m3u8 // видеото ми е с разширение m3u8
Следват регистрационните файлове, които получавам, когато опитам URL адреса на Cast в моето приложение.
Състояние на приложението: Заредено. Стартирано. Готово
Брой сесии: 1
Състояние на медийния елемент:
Съобщение на диспечера на приемника за предаване: Подателят е свързан: { ДРУГИ ДАННИ}
Съобщение на Media Manager: ПОЛУЧАВАНЕ НА СТАТУС {OTHER DATA}
Медиен протокол: Неизвестен
АКТУАЛИЗАЦИЯ 3 Таг BaseCastManager:
D/ccl_BaseCastManager(2974): [v1.8] придобиване на връзка с услугите на Google Play за Chromecast (941cb5ec30f65c2082b67fd7c5df0b03)
D/ccl_BaseCastManager(2974): [v1.8] onConnected() достигна с предишно спиране: невярно
D/ccl_BaseCastManager(2974): [v1.8] launchApp() се нарича D/ccl_BaseCastManager(2974): [v1.8] Стартиране на приложение
D/ccl_BaseCastManager(2974): [v1.8] launchApplication() -› успешен резултат
D/ccl_BaseCastManager(2974): [v1.8] Успешно добавен новият слушател BaseCastConsumer om.google.sample.castcompanionlibrary.notification.VideoCastNotificationService$2@429998a8
Етикет VideoCastManager:
D/ccl_VideoCastManager(2974): [v1.8] onApplicationStatusChanged() достигна: Начален екран на Chromecast
D/ccl_VideoCastManager(2974): [v1.8] onVolumeChanged() достигна
D/ccl_VideoCastManager(2974): [v1.8] onApplicationStatusChanged() достигна: нула
D/ccl_VideoCastManager(2974): [v1.8] onApplicationConnected() достигна със sessionId: B71F7618-1516-5F6C-D795-EF32FD0BF5E2 и mReconnectionStatus=INACTIVE
D/ccl_VideoCastManager(2974): [v1.8] startNotificationService()
D/ccl_VideoCastManager(2974): [v1.8] attachMedia()
D/ccl_VideoCastManager(2974): [v1.8] Регистриране на пространство от имена на MediaChannel
D/ccl_VideoCastManager(2974): [v1.8] onApplicationStatusChanged() достигнат: Готов за игра
D/ccl_VideoCastManager(2974): [v1.8] Успешно добавен новият слушател CastConsumer om.google.sample.castcompanionlibrary.notification.VideoCastNotificationService$2@429998a8
D/ccl_VideoCastManager(2974): [v1.8] RemoteMediaPlayer::onStatusUpdated() е достигнат
D/ccl_VideoCastManager(2974): [v1.8] onRemoteMediaPlayerStatusUpdated() достигна
D/ccl_VideoCastManager(2974): [v1.8] mApiClient или mRemoteMediaPlayer е null, така че няма › да продължи
D/ccl_VideoCastManager(2974): [v1.8] RemoteMediaPlayer::onMetadataUpdated() е достигнат
D/ccl_VideoCastManager(2974): [v1.8] onRemoteMediaPlayerMetadataUpdated() достигна