MediaRouterProvider не виден в сети
Я создал SampleMediaRouteProvider
как указано в https://github.com/googlesamples/android-MediaRouter. В этом примере также есть MediaRouter
это обнаруживает все MediaRouteProviders
в сети. это SampleMediaRouteProvider
отображается на том же устройстве другими приложениями, но не видна приложениям на другом устройстве в той же сети.
Можете ли вы помочь мне получить MediaRouteProvider
видно в сети Wi-Fi. Я хочу создать MediaRenderer
на устройстве Android, которое я мог использовать для трансляции звука с других устройств Android.
1 ответ
MediaRouteProvider на самом деле не делает то, что вы просите.
MediaRouteProvider, который вы написали, играет роль, позволяющую приложениям на вашем телефоне - устройстве A - находить другие устройства в сети (устройство B или C). Устройства B и C могут воспроизводить мультимедиа, имеющееся на устройстве A. Устройство A может передавать / воспроизводить напрямую (скажем, на устройство B) или транслировать (скажем, на устройство C).
При зеркалировании вы отправляете аудиоконтент с устройства A на устройство B. При трансляции вы отправляете только URL-адрес на устройство C, например, ссылку на видео на youtube.com. И устройство C идет прямо к источнику, чтобы получить контент.
Я думаю, что вам нужно будет:
- Разместите свой MediaRouteProvider на каждом устройстве.
- Реализовать механизм обнаружения
- например, на основе использования SSDP, mDNS и т. д.
- имейте свое посредственное открытие
- Внедрить веб-сервер на устройстве с контентом
- или использовать что-то вроде nanohttpd
- Теперь напишите свой MediaRenderer