Mediarouter
最近更新时间 | 稳定版 | 候选版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2023 年 2 月 22 日 | 1.3.1 | - | 1.4.0-beta02 | 1.6.0-alpha01 |
声明依赖项
如需添加 MediaRouter 的依赖项,您必须将 Google Maven 制品库添加到项目中。如需了解详情,请参阅 Google 的 Maven 制品库。
在应用或模块的 build.gradle
文件中为所需制品添加依赖项:
Groovy
dependencies { implementation "androidx.mediarouter:mediarouter:1.4.0" }
Kotlin
dependencies { implementation("androidx.mediarouter:mediarouter:1.4.0") }
如需详细了解依赖项,请参阅添加 build 依赖项。
反馈
您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
版本 1.6
版本 1.6.0-alpha01
2023 年 2 月 10 日
发布了 androidx.mediarouter:mediarouter:1.6.0-alpha01
。版本 1.6.0-alpha01 中包含这些提交内容。
新功能
- 输出切换器的路由列表偏好设置
API 变更
- 应用配置输出切换器的机制。
版本 1.4
版本 1.4.0-beta02
2023 年 2 月 22 日
发布了 androidx.mediarouter:mediarouter:1.4.0-beta02
。版本 1.4.0-beta02 中包含这些提交内容。
bug 修复
- 修复了回归问题,该问题会导致应用由于
MediaRouterProvider.notifyDynamicRoutesChanged
中的IllegalArgumentException
而发生崩溃 (7d17ea)。
版本 1.4.0-beta01
2023 年 1 月 25 日
发布了 androidx.mediarouter:mediarouter:1.4.0-beta01
。版本 1.4.0-beta01 中包含这些提交内容。
API 变更
现在,如果所传递的路由无一处于 SELECTED 或 SELECTING 状态,DynamicGroupRouteController.notifyDynamicRoutesChanged()
会抛出 IllegalArgumentException
。(8f6b3e)
bug 修复
- 修复了因与 API 兼容的提供程序服务实现返回 null 路由提供程序而导致的崩溃问题。(63f16d)
- 将受保护的广播接收器标记为未导出,使其适用于以 API 33 及更高级别为目标平台的应用。(784f8b)
- 修复了
OverlayListView
中一些虚假的可为 null 性注解。(472e3f) - 修复了下述 bug:
SystemOutputSwitcherDialogController.showDialog
中的EXTRA_CLOSE_ON_CONNECT
会导致蓝牙设置 fragment 在 Wear 设备上突然关闭。(28c9d8) - 已更改为输出切换器公共方法的 Javadoc。(f0ae94、44d2c9)
版本 1.4.0-alpha01
2022 年 11 月 9 日
发布了 androidx.mediarouter:mediarouter:1.4.0-alpha01
。版本 1.4.0-alpha01 中包含这些提交内容。
新功能
- 添加了
SystemOutputSwitcherDialogController#showDialog
,以显示系统的输出切换器对话框,或在不支持系统输出切换器的 Wear 设备上显示蓝牙设置 Fragment。(Ic3d78)
API 变更
- 添加了
MediaRouteDescriptor.Builder.clearControlFilters
(I3a4e1) - 在
MediaRouter
中添加了缺失的MainThread
注解。(I3ef6e)
bug 修复
- 修复了调用
MediaRouter.removeUserRoute
导致的设备特定崩溃问题 (b/202931542)。 - 修复了群组描述符无法一致地接收音量处理更新的问题 (461303)。
- 在 API 33+ 上添加了广播接收器导出标记 (b2a663)。
- 修复了由于从平台收到无效路由描述符而导致的崩溃问题 (dd5c09)。
版本 1.3
版本 1.3.1
2022 年 7 月 27 日
发布了 androidx.mediarouter:mediarouter:1.3.1
。版本 1.3.1 中包含这些提交内容。
bug 修复
- 解决了一个特定于设备的问题,即
MediaRouter.removeUserRoute()
会抛出意外的IllegalArgumentException
(b/202931542)。
版本 1.3.0
2022 年 4 月 20 日
发布了 androidx.mediarouter:mediarouter:1.3.0
。版本 1.3.0 中包含这些提交内容。
自 1.2.0 以来的重要变更
- 在
MediaRouterParams
中添加了一个标记,用于在运行时停用无缝传输。 - 添加了一个可重置
MediaRouter
的测试工件。 - 在
MediaRouterControllerDialog
中添加了一个用于调整用户体验的路由器参数。 - 为公共方法添加了 null 注释。
- 针对 AndroidX 启用了对
MissingGetterMatchingBuilder
的 API lint 检查。 - 将 mediarouter 对 core 的依赖项更新至 1.6.0。
版本 1.3.0-rc01
2022 年 3 月 23 日
发布了 androidx.mediarouter:mediarouter:1.3.0-rc01
。版本 1.3.0-rc01 中包含这些提交内容。
- 与上个 Beta 版相比没有变化。
版本 1.3.0-beta01
2022 年 3 月 9 日
发布了 androidx.mediarouter:mediarouter:1.3.0-beta01
。版本 1.3.0-beta01 中包含这些提交内容。
- 与上个 Alpha 版相比没有变化。
版本 1.3.0-alpha01
2021 年 12 月 15 日
发布了 androidx.mediarouter:mediarouter:1.3.0-alpha01
。版本 1.3.0-alpha01 中包含这些提交内容。
API 变更
- 在
MediaRouterParams
中添加了一个标记,用于在运行时停用无缝传输 (I53d68) - 添加了一个可重置
MediaRouter
的测试工件。(Id167c) - 在
MediaRouterControllerDialog
中添加了一个用于调整用户体验的路由器参数 (I7e574) - 为公共方法添加了 null 注解 (Ifc901)
bug 修复
- 针对 androidx 启用了对
MissingGetterMatchingBuilder
的 API lint 检查(I4bbea、b/138602561)
版本 1.2
版本 1.2.6
2022 年 1 月 26 日
发布了 androidx.mediarouter:mediarouter:1.2.6
。版本 1.2.6 中包含这些提交内容。
bug 修复
- 修复了
RemotePlaybackClient
构造函数在 Android 12 上会发生崩溃的问题 (b/210684559)
版本 1.2.5
2021 年 9 月 1 日
发布了 androidx.mediarouter:mediarouter:1.2.5
。版本 1.2.5 中包含这些提交内容。
bug 修复
- 在没有要传输的路由时,隐藏输出切换器中的媒体路由按钮。
- 修复了群组成员路由的音量控制问题。
版本 1.2.4
2021 年 6 月 16 日
发布了 androidx.mediarouter:mediarouter:1.2.4
。版本 1.2.4 中包含这些提交内容。
bug 修复
- 修复了 MediaRouteButton 重放连接动画的问题。
- 修复了
MediaRouteChooserDialog
中的路由垂直对齐问题。
版本 1.2.3
2021 年 5 月 5 日
发布了 androidx.mediarouter:mediarouter:1.2.3
。版本 1.2.3 中包含这些提交内容。
bug 修复
- 修复了自定义选择器对话框的 NullPointerException。
- 修复了以下问题:如果 MediaRouteButton 被暂时停用,即便是在连接的情况下,它也会显示已断开连接状态。
版本 1.2.2
2021 年 2 月 10 日
发布了 androidx.mediarouter:mediarouter:1.2.2
。版本 1.2.2 中包含这些提交内容。
bug 修复
- 切勿试图在调用
OnDynamicRouteChangedListener.onRouteChanged
时重新选择所选路由。
版本 1.2.1
2021 年 1 月 13 日
发布了 androidx.mediarouter:mediarouter:1.2.1
。版本 1.2.1 中包含这些提交内容。
bug 修复
- 修复了以下问题:在 BT 处于可用状态时,调用
unselect()
会选择手机扬声器 - 修复了 MediaRouter.Callback 计时问题。在
OnPrepareTransferListener#onPrepareTransfer
完成后,将会调用Callback#onRouteSelected
和Callback#onRouteUnselected
。
版本 1.2.0
2020 年 10 月 14 日
发布了 androidx.mediarouter:mediarouter:1.2.0
。版本 1.2.0 中包含这些提交内容。
自 1.1.0 以来的主要功能
- 支持无缝媒体传输,可通过系统界面实现媒体传输:如需了解详情,请观看 What's new in Media(媒体的新变化)视频
- 更改了有关注册回调的指南。请参阅
MediaRouter.addCallback()
的 Javadoc 中的示例代码 - 添加了新的监听器
MediaRouter#OnPrepareTransferListener
,以便在所选路由将要更改时接收事件 - 添加了
MediaRouterParams
,以指明路由功能和界面类型。 - 防止尝试将仅限内部使用的方法与
@RestrictTo(LIBRARY)
搭配使用
版本 1.2.0-rc02
2020 年 10 月 1 日
发布了 androidx.mediarouter:mediarouter:1.2.0-rc02
。版本 1.2.0-rc02 中包含这些提交内容。
bug 修复
- 修复了用户通过系统界面停止投射时不一定调用
RouteController#onUnselect
的问题。
版本 1.2.0-rc01
2020 年 9 月 16 日
发布了 androidx.mediarouter:mediarouter:1.2.0-rc01
。版本 1.2.0-rc01 中包含这些提交内容。
bug 修复
- 修复了连接到蓝牙音频设备时当前投射断开连接的问题。
- 修复了在
MediaRouteProvider#notifyDynamicRoutesChanged()
中抛出IllegalArgumentException
的问题。 - 确保输出切换器中的停止投射功能可正常使用
版本 1.2.0-beta01
2020 年 9 月 2 日
发布了 androidx.mediarouter:mediarouter:1.2.0-beta01
。版本 1.2.0-beta01 中包含这些提交内容。
新功能
- 支持无缝媒体传输,可通过系统界面实现媒体传输:如需了解详情,请观看 What's new in Media(媒体的新变化)视频
API 变更
- 支持
MediaRouter.OnPrepareTransferListener
使用 ListenableFuture
bug 修复
- 修复了群组路由的音量控制问题。
- 创建群组路由时,请先创建一个群组路由,稍后再创建成员路由。
- 确保输出切换器中的“停止”选项正常工作。
- 修复了未按预期调用的回调函数
RouteController#onSelect
(创建路由会话时)。MediaRouter.Callback#onRouteSelected
(从 Cast 传输到手机时)。MediaRouter.Callback#onRouteSelected
(其中包含正确的群组路由信息)。
- 支持移除回调函数
版本 1.2.0-alpha02
2020 年 7 月 22 日
发布了 androidx.mediarouter:mediarouter:1.2.0-alpha02
。版本 1.2.0-alpha02 中包含这些提交内容。
API 变更
- 添加了新的
MediaRouter.Callback#onRouteSelected
,以便在所选路由与请求的路由不同时收到通知 (Ieee16) - 添加了新的监听器
MediaRouter#OnPrepareTransferListener
,以便在所选路由将要更改时接收事件 (I6ace1) - 添加了 MediaRouterParam (I33150)
- 更改了有关注册回调的指南。请参阅
MediaRouter.addCallback()
的 Javadoc 中的示例代码 (I58112)
版本 1.2.0-alpha01
2020 年 4 月 15 日
发布了 androidx.mediarouter:mediarouter:1.2.0-alpha01
。版本 1.2.0-alpha01 中包含这些提交内容。
API 变更
- 防止尝试将仅限内部使用的方法与
@RestrictTo(LIBRARY)
搭配使用
bug 修复
- 解决了投射对话框的 Talkback 问题
- 通过锁定保护 DynamicGroupRouterController 的监听器
版本 1.1
版本 1.1.0
2019 年 9 月 5 日
发布了 androidx.mediarouter:mediarouter:1.1.0
。点击此处可查看此版本中包含的提交内容。
自 1.0.0 以来的重要变更
- 动态群组支持
- 允许用户动态添加或移除路由设备。
- 要启用动态群组,请调用
MediaRouteButton.enableDynamicGroup()
;应用会显示一个关于动态群组的新对话框 - 已安装的
MediaRouteProvider
也需要支持动态群组才能真正启用该功能。
版本 1.1.0-rc01
2019 年 6 月 13 日
发布了 androidx.mediarouter:mediarouter:1.1.0-rc01
,该版本与 1.1.0-beta02
相比没有变化。点击此处可查看此版本中包含的提交内容。
版本 1.1.0-beta02
2019 年 6 月 5 日
发布了 androidx.mediarouter:mediarouter:1.1.0-beta02
。点击此处可查看此版本中包含的提交内容。
新功能
- 支持在 MediaRouter 对话框中使用 RTL 语言
bug 修复
- 修复了 MediaRoute 对话框底部的内边距
版本 1.1.0-beta01
2019 年 5 月 7 日
发布了 androidx.mediarouter:mediarouter:1.1.0-alpha01
。点击此处可查看此版本中包含的提交内容。
新功能
- 对于标记为
@NonNull
的 null 参数,已将IllegalPointerException
更改为NullPointerException
。
API 变更
- 更改了
DynamicRouteDescriptor
的回调逻辑。现在MediaRouteProvider
会调用MediaRouterProvider.DynamicGroupController.notifyDynamicRoutesChanged
,而不是直接调用回调方法。
版本 1.1.0-alpha03
2019 年 4 月 3 日
发布了 androidx.mediarouter:mediarouter:1.1.0-alpha03
。点击此处可查看此版本中包含的提交内容。
bug 修复
- 修复了 MediaRouteVolumeSlider 和 RegisteredMediaRouteProvider 出现崩溃的问题。
版本 1.1.0-alpha02
2019 年 3 月 13 日
发布了 androidx.mediarouter:mediarouter:1.1.0-alpha02
。点击此处可查看此版本中包含的完整提交内容列表。
新功能
- 在 Android Studio 布局预览中支持 MediaRouteButton
API 变更
- 在
MediaRouteActionProvider
和MediaRouteButton
中添加了enableDynamicGroup()
方法,以启用动态群组功能 - 在
MediaRouteActionProvider
和MediaRouteButton
中添加了setAlwaysVisible(boolean)
方法,以使MediaRouteButton
始终可见
bug 修复
- 使
MediaRouteCastDialog
行易于点击 - 移除了不必要的
onRouteChanged
回调调用
版本 1.1.0-alpha01
2018 年 12 月 3 日
新功能
- 新增了对动态群组路由的支持
- 新增了 API,以通过
MediaRouteProviders
支持动态群组路由 - 为动态群组路由的路由选择器和控制器对话框添加了新的用户体验
- 新增了 API,以通过