问题标签 [mediarouter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1344 浏览

android - 如何设置 MediaRouter 对话框的标题?

我正在使用mediarouter-v7v23.1.1 来显示 chromecast / 媒体路由器选择器对话框。现在我尝试设置这个东西的样式 - 虽然我可以用这个来改变背景颜色和列表项文本样式:

我无法覆盖对话框标题的样式。此尝试和其他尝试均未成功:

据我了解,对话框有自己的窗口,因此android:windowTitleStyle应该应用我在自定义样式中覆盖的(对话框)主题,但不是。我还研究了 mediarouter 对话框的实现,看看他们是否做了任何花哨的事情(比如隐藏窗口并添加自定义元素作为标题),但他们没有,他们只是调用setTitle(...)实例Dialog

我究竟做错了什么?

0 投票
2 回答
5130 浏览

android - 从我们的应用程序启用 Android 的屏幕投射功能

我正在研究铸造应用程序。我可以使用 chromecast 设备将本地视频从我的应用程序投射到电视上。

现在我想在电视上投射(镜像)完整的安卓手机。我知道 Android 通过在快速设置中使用 Cast 功能将其作为默认功能提供,用户必须明确连接到可用的 Chrome Cast 设备。

我怎样才能在我的应用程序中做同样的事情?我尝试使用 MediaProjection API 来捕获屏幕并保存它。

谁能告诉我如何做到这一点?

0 投票
1 回答
190 浏览

android - MediaRouterProvider 在网络中不可见

SampleMediaRouteProviderhttps://github.com/googlesamples/android-MediaRouter中创建了一个。在此示例中,还有一个MediaRouter可以发现MediaRouteProviders网络中的所有内容。这SampleMediaRouteProvider在同一设备中对其他应用程序可见,但对同一网络中其他设备上的应用程序不可见。

你能帮我MediaRouteProvider在wifi网络中看到吗?我希望MediaRenderer在 Android 设备上创建一个,我可以用它来从其他 Android 设备投射音频。

0 投票
1 回答
1255 浏览

android - Android MediaRouter 音量事件

我想在投射时实现 Youtube 应用程序中看到的音量变化,例如应用程序在后台或锁定屏幕上

像这样

现在我得到了滑块,就像上面的图片一样,它响应音量按钮,但我的广播接收器没有收到变化。

0 投票
1 回答
1332 浏览

android - Android Cast - 媒体路由器回调未返回

我正在尝试自动发现 Cast 设备。这基本上是我所看到的如何做到这一点的逐字记录,但是我从来没有得到 onRouteAdded 或 onRouteSelected 的回调。

我尝试更改使用哪些标志,但没有得到不同的结果。有时会添加路线,但从未选择过。

0 投票
0 回答
107 浏览

android - Android Chromecast 支持 MediaRouter 可绘制资源问题

最近开始将 Google 的 CastCompanionLibrary 从 v2.5.2 升级到最新的 v2.9.1。显然 v2.5.2 依赖于 android-support-v7-mediarouter-v22.2.1,而最新的 v2.9.1 对 mediarouter-v25.0.0 有 gradle 依赖。一切都很好,直到 gradle-sync 和/或 gradle-compilation 中似乎缺少这个可绘制资源。“找不到与给定值'@drawable/ic_media_route_off_mono_dark'匹配的资源”。有哪些替代方案,解决方案是什么?请不要建议,我不应该在我的项目代码库中使用 mediarouter 库可绘制资源。

0 投票
0 回答
671 浏览

android - 是否可以将 MiniControllerFragment 与自定义 MediaRouteProvider 一起使用?

是否可以让 Google 的演员MiniControllerFragment阵容与我的 custom 一起工作MediaRouteProvider

我问的原因:当我投射到我的自定义 MediaRouteProvider 时,迷你控制器按钮 UI 没有出现。我注意到 MiniControllerFragment[1] 使用 UIMediaController。

我通读了 UIMediaController 的代码。看起来 UIMediaController 是由 SessionManager 单例中的事件驱动的。UIMediaController 订阅 SessionManager,但只处理“CastSession”[4] 类的 Session。

我不确定我是否可以在我的 SessionProvider 中扩展/实例化 CastSession(我目前创建了一个从 cast.framework.Session [2] 扩展的类)。

实例化 CastSession 对象[3] 看起来相当棘手,它的构造函数有很长的类列表,其中一些我似乎无法从任何地方获取实例。

谢谢,里克。


笔记

[1] MiniControllerFragment 文档:https ://developers.google.com/android/reference/com/google/android/gms/cast/framework/media/widget/MiniControllerFragment

[2] 会话/CastSession 文档:https ://developers.google.com/android/reference/com/google/android/gms/cast/framework/Session

[3]CastSession构造函数,根据反编译的.class文件。需要未记录的类的实例。似乎不存在工厂方法:

onSessionStarted()[4]来自会话管理器的委托函数处理事件。只对 CastSession 会话感兴趣:

0 投票
1 回答
1975 浏览

android - MediaRouter 安卓编程

我有一个MediaRouterandroid应用程序的问题,我遵循了android API指南MediaRouter但是当我运行应用程序时,工具栏上没有出现任何按钮。

这是工具栏的代码:

0 投票
1 回答
182 浏览

android - 扩展 MediaRouteButton 行为

我正在构建一个可以投射到 Chromecast 和 AppleTV 设备的应用程序。这些设备的发现工作正常:MediaRouter使用 SSDP 发现 ChromeCast,使用 SSDP 发现 AppleTV。目前,我有一个常规按钮,显示已发现设备的组合列表,但我想让它使用花哨的演员按钮。

有没有一种优雅的方法来扩展MediaRouteButton显示我自己的已发现设备列表,或者我应该只是使用 cast drawables 从头开始​​创建自己的按钮?

我知道MediaRouteButton该类可以扩展,但我不确定如何将扩展按钮应用于通过 xml 声明的按钮。我觉得我错过了一些非常明显的东西,但我还没有找到它。

0 投票
1 回答
335 浏览

android - 如何使用 MediaRouting 在 Android 设备之间共享视频

目前我正在进入 MediaRoute Android 课程。我已经遵循并理解了这些示例,并且我正在尝试在两个设备之间共享视频,例如,两个具有相同硬件的平板电脑。我有两个自定义应用程序。

  1. MediaRouter 应用程序,它将发送视频
  2. MediaRouterProvider 应用程序,它将接收视频并播放它。

事实是,如果第二个应用程序安装在第二个设备中,我安装在第一个设备上的第一个应用程序看不到路线。相反,如果我在第一个设备上安装第二个应用程序,我能够发现 MediaRouteProvider 应用程序中定义的 MediaRoutes,因此第二个应用程序在本地工作。

我正在发布这样的 MediaRouteProvider 路由:

当然,我知道在两个设备之间没有直接连接的情况下发现路由并没有什么魔力。两者都连接到同一个 Wifi 网络。另外,我有一个连接到电视的 chromecast,我可以发现它,我还可以在电视上播放视频。

总而言之,我想知道我的第一个应用程序在做什么 chromecast 以便对我的第二个应用程序做类似的事情。我尝试在我的两台设备之间建立直接套接字连接,但找不到路由。也许我正在寻找一种错误的方法,因此将不胜感激。