媒体

与其他应用共享媒体内容和控件。已被 media3 取代。
最近更新时间 稳定版 候选版 Beta 版 Alpha 版
2023 年 11 月 29 日 1.7.0 - - -

声明依赖项

如需添加 Media 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    implementation "androidx.media:media:1.7.0"
}

Kotlin

dependencies {
    implementation("androidx.media:media:1.7.0")
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.7

版本 1.7.0

2023 年 11 月 29 日

发布了 androidx.media:media:1.7.0版本 1.7.0 中包含这些提交内容

自 1.6.0 以来的重要变更

  • MediaButtonReceiver 中捕获 ForegroundServiceStartNotAllowedException 并将其转发到 onForegroundServiceStartNotAllowedException。(I0c939)
  • 添加了 BROWSER_SERVICE_EXTRAS_KEY_FAVORITES_MEDIA_ITEM,用于在 MediaBrowserCompat 根 extra 中传递收藏的媒体内容。(Id3a11)
  • 添加了 extra 以在 MediaBrowserCompat 根 extra 和 MediaItem 说明中设置浏览自定义操作。(Iab163)
  • 修复了在旧版 Android 上因从 MediaBrowserService.onLoadChildren 返回 null 而导致的 IllegalStateException

版本 1.7.0-rc01

2023 年 11 月 15 日

发布了 androidx.media:media:1.7.0-rc01,该版本没有任何变化。版本 1.7.0-rc01 中包含这些提交内容。

版本 1.7.0-beta01

2023 年 11 月 1 日

发布了 androidx.media:media:1.7.0-beta01版本 1.7.0-beta01 中包含这些提交内容

bug 修复

  • 修复了 MediaBrowserServiceMediaBrowserServiceCompat 的潜在内存泄漏问题。b/37137738
  • 修复了在旧版 Android 上因从 MediaBrowserService.onLoadChildren 返回 null 而导致的 IllegalStateException

版本 1.7.0-alpha01

2023 年 2 月 8 日

发布了 androidx.media:media:1.7.0-alpha01版本 1.7.0-alpha01 中包含这些提交内容

新功能

  • MediaButtonReceiver 中捕获 ForegroundServiceStartNotAllowedException 并将其转发到 onForegroundServiceStartNotAllowedException。(I0c939)
  • 添加了 BROWSER_SERVICE_EXTRAS_KEY_FAVORITES_MEDIA_ITEM,用于在 MediaBrowserCompat 根 extra 中传递收藏的媒体内容。(Id3a11)
  • 添加了 extra 以在 MediaBrowserCompat 根 extra 和 MediaItem 说明中设置浏览自定义操作。(Iab163)

版本 1.6.0

版本 1.6.0

2022 年 4 月 20 日

发布了 androidx.media:media:1.6.0版本 1.6.0 中包含这些提交内容

自 1.5.0 以来的重要变更

  • 添加了在 Android Auto 媒体应用上使用 CarAppLibrary 设置“登录”/“设置”页面所需的 extra。

版本 1.6.0-rc01

2022 年 4 月 6 日

发布了 androidx.media:media:1.6.0-rc01版本 1.6.0-rc01 中包含以下提交内容。

版本 1.6.0-beta01

2022 年 3 月 23 日

发布了 androidx.media:media:1.6.0-beta01版本 1.6.0-beta01 中包含这些提交内容

  • 与上个 Alpha 版相比没有变化。

版本 1.6.0-alpha01

2022 年 2 月 23 日

发布了 androidx.media:media:1.6.0-alpha01版本 1.6.0-alpha01 中包含这些提交内容

API 变更

  • 添加了在 Android Auto 媒体应用上使用 CarAppLibrary 设置“登录”/“设置”页面所需的 extra。(Ifb3ca)

版本 1.5

版本 1.5.0

2022 年 2 月 9 日

发布了 androidx.media:media:1.5.0版本 1.5.0 中包含这些提交内容

自版本 1.4.0 以来的重要变更

  • AudioManagerCompat 添加了 isVolumeFixed
  • 为单一项目的样式设置和完成百分比添加了 MediaConstants
  • 对于 API 级别 30 或更高级别,库将不再注入 MediaBrowserCompat 的软件包可见性过滤器。您需要在应用清单中指定 <queries> 元素。
  • 修复了 API 21 上 getMediaDescription() 的 extra 的意外更改
  • 在 API 19 上防止了一些 IllegalStateException
  • 修复了以 Android 12 为目标平台时 MediaSessionCompat 中出现崩溃的问题
  • 修复了 KitKat 上 NotificationCompat 出现崩溃的问题

版本 1.5.0-rc01

2022 年 1 月 26 日

发布了 androidx.media:media:1.5.0-rc01,该版本与 1.5.0-beta01 相比没有变化。版本 1.5.0-rc01 中包含这些提交内容

版本 1.5.0-beta01

2021 年 12 月 1 日

发布了 androidx.media:media:1.5.0-beta01,该版本与 1.5.0-alpha01 相比没有变化。版本 1.5.0-beta01 中包含这些提交内容。

版本 1.5.0-alpha01

2021 年 11 月 3 日

发布了 androidx.media:media:1.5.0-alpha01版本 1.5.0-alpha01 中包含这些提交内容

新功能

  • 将媒体对 Core 的依赖关系更新至 1.6.0

API 变更

  • 向 AudioManagerCompat 添加了 isVolumeFixed
  • 为单一项目的样式设置和完成百分比添加了 MediaConstant。

bug 修复

  • 对于 API 级别 30 或更高级别,库将不再注入 MediaBrowserCompat 的软件包可见性过滤器。您需要在应用清单中指定 <queries> 元素。
  • 修复了 API 21 上 getMediaDescription() 的 extra 的意外更改
  • 通过设置默认大小修复了 ArrayList 使用效率低下的问题。
  • 避免了 API 19 上抛出的某种 IllegalStateException。
  • 修复了以 Android 12 为目标平台时 MediaSessionCompat 中出现崩溃的问题
  • 修复了 KitKat 上 NotificationCompat 出现崩溃的问题

版本 1.4

版本 1.4.3

2021 年 10 月 13 日

发布了 androidx.media:media:1.4.3版本 1.4.3 中包含这些提交内容

bug 修复

  • 库将不再注入 MediaBrowserCompat 的软件包可见性过滤器。如果您的应用以 API 级别 30 或更高级别为目标平台,请在应用清单中指定 <queries> 元素。(I0a964b/185314633

版本 1.4.2

2021 年 9 月 15 日

发布了 androidx.media:media:1.4.2版本 1.4.2 中包含这些提交内容

bug 修复

  • 修复了 API 21 上 getMediaDescription() 的附带效应 (I5c05f)

版本 1.4.1

2021 年 8 月 4 日

发布了 androidx.media:media:1.4.1版本 1.4.1 中包含这些提交内容

bug 修复

  • 修复了用于创建 PendingIntent 的可变性标记,以防止在以 Android S 为目标平台时发生崩溃。
  • 修复了针对 NotificationCompat.MediaStyle 的 ClassVerificationFailure。

版本 1.4.0

2021 年 7 月 21 日

发布了 androidx.media:media:1.4.0版本 1.4.0 中包含这些提交内容。

自 1.3.0 以来的重要变更

  • 添加了新的软件包键 METADATA_KEY_SERIES_CONTENT_ID,用于 MediaMetadataCompat 中电视连续剧的媒体内容 ID
  • 添加了新的软件包键 METADATA_KEY_NEXT_EPISODE_CONTENT_ID,用于 MediaMetadataCompat 中电视剧集的下一集内容 ID
  • 弃用了 MediaControllerCompat.TransportControls#EXTRA_LEGACY_STREAM_TYPE,改为添加 MediaConstants#TRANSPORT_CONTROLS_EXTRAS_KEY_LEGACY_STREAM_TYPE
  • 为 playFromUri 添加了一个用于随机播放媒体的额外键
  • 向 Result 类添加了 @Nullable 注解
  • 为 MediaButtonReceiver 解决了缺少 intent 的 EXTRA_KEY_EVENT 的问题

版本 1.4.0-rc01

2021 年 6 月 30 日

发布了 androidx.media:media:1.4.0-rc01,该版本与 1.4.0-beta01 相比没有变化。版本 1.4.0-rc01 中包含这些提交内容

版本 1.4.0-beta01

2021 年 6 月 17 日

发布了 androidx.media:media:1.4.0-beta01版本 1.4.0-beta01 中包含这些提交内容

API 变更

  • 添加了新的软件包键 METADATA_KEY_SERIES_CONTENT_ID,用于 MediaMetadataCompat 中电视连续剧的媒体内容 ID

  • 添加了新的软件包键 METADATA_KEY_NEXT_EPISODE_CONTENT_ID,用于 MediaMetadataCompat 中电视剧集的下一集内容 ID

版本 1.4.0-alpha01

2021 年 5 月 5 日

发布了 androidx.media:media:1.4.0-alpha01版本 1.4.0-alpha01 中包含这些提交内容

API 变更

  • 弃用了 MediaControllerCompat.TransportControls#EXTRA_LEGACY_STREAM_TYPE,改为添加 MediaConstants#TRANSPORT_CONTROLS_EXTRAS_KEY_LEGACY_STREAM_TYPE (I62f17)
  • 为 playFromUri 添加了一个用于随机播放媒体的额外密钥 (Ibc63c)
  • 向 Result 类添加了 @Nullable 注解 (I2d617)

bug 修复

  • 为 MediaButtonReceiver 解决了缺少 intent 的 EXTRA_KEY_EVENT 的问题 (If7557)

版本 1.3.1

版本 1.3.1

2021 年 5 月 5 日

发布了 androidx.media:media:1.3.1版本 1.3.1 中包含这些提交内容

bug 修复

  • 为 MediaButtonReceiver 解决了缺少 intent 的 EXTRA_KEY_EVENT 的问题 (If7557)

版本 1.3.0

版本 1.3.0

2021 年 4 月 7 日

发布了 androidx.media:media:1.3.0版本 1.3.0 中包含这些提交内容。

自 1.2.0 以来的重要变更

  • 将 Android Auto extras 迁移到了 MediaConstants。

版本 1.3.0-rc02

2021 年 3 月 24 日

发布了 androidx.media:media:1.3.0-rc02版本 1.3.0-rc02 中包含这些提交内容

bug 修复

  • FLAG_IMMUTABLE 设为 MediaButtonReceiver 的 PendingIntent(以 Android 12 作为目标版本的应用必须这样设置)。
  • 修复了采用 API 27 的 MediaSessionCompatsetCallback(null) 之后出现的 NullPointerException 问题。

版本 1.3.0-rc01

2021 年 3 月 10 日

发布了 androidx.media:media:1.3.0-rc01版本 1.3.0-rc01 中包含这些提交内容

1.3.0-beta01 以来没有任何变化。

版本 1.3.0-beta01

2021 年 2 月 10 日

发布了 androidx.media:media:1.3.0-beta01版本 1.3.0-beta01 中包含这些提交内容

API 变更

  • 添加了新的常量 PlaybackStateCompat.ACTION_SET_PLAYBACK_SPEED (I9d076)
  • 将 Android Auto extras 迁移到了 MediaConstants。(I290ab)
  • 添加了用于约束 MediaBrowserService 的根子级的常量。(Ifcebd)

bug 修复

  • 为媒体按钮待处理 intent 添加了 FLAG_RECEIVER_FOREGROUND

版本 1.2.1

Media 版本 1.2.1

2020 年 12 月 2 日

发布了 androidx.media:media:1.2.1版本 1.2.1 中包含这些提交内容

bug 修复

  • 修复了在 API 27 中调用 MediaSessionCompat#setCallback(null) 后出现的 NPE 问题

版本 1.2.0

版本 1.2.0

2020 年 9 月 16 日

发布了 androidx.media:media:1.2.0版本 1.2.0 中包含这些提交内容

自 1.1.0 以来的重要变更

  • 新增了对低于 SDK 21 的版本的 AudioAttributesCompat#setLegacyStreamType 支持
  • 支持对 androidx.mediarouter 库进行音量控制
  • 更好地支持 androidx.mediaandroidx.media2 之间的互操作性

版本 1.2.0-rc01

2020 年 9 月 2 日

发布了 androidx.media:media:1.2.0-rc01,该版本与 1.2.0-beta01 相比没有变化。版本 1.2.0-rc01 中包含这些提交内容

版本 1.2.0-beta01

2020 年 8 月 19 日

发布了 androidx.media:media:1.2.0-beta01版本 1.2.0-beta01 中包含这些提交内容

新功能

  • 针对 API 级别 21 之前的版本,新增了对 AudioAttributesCompat#setLegacyStreamType 的支持

API 变更

  • PlaybackStateCompat extra 中的媒体 ID 添加了 MediaConstants#PLAYBACK_STATE_EXTRAS_KEY_MEDIA_ID,该 ID 应与当前元数据的 MediaMetadataCompat#METADATA_KEY_MEDIA_ID 相同。

bug 修复

  • 修复了 AudioAttributesCompat.Builder#setContentType 存在的问题

版本 1.2.0-alpha04

2020 年 6 月 24 日

发布了 androidx.media:media:1.2.0-alpha04版本 1.2.0-alpha04 中包含这些提交内容

新功能

  • 提供了一种支持 Mediarouter 库的音量控制的方法

API 变更

  • 添加了 AudioManagerCompat#getStreamMaxVolume
  • 添加了 AudioManagerCompat#getStreamMinVolume

bug 修复

  • 修复了低于 SDK 21 的版本上 media 和 media2 之间的互操作性问题

版本 1.2.0-alpha03

2020 年 6 月 10 日

发布了 androidx.media:media:1.2.0-alpha03版本 1.2.0-alpha03 中包含这些提交内容

API 变更

  • MediaConstants.SESSION_EXTRAS_KEY_AUTHTOKEN 已被移除

bug 修复

  • 修复了 RemoteUserInfoequals() 存在的问题

版本 1.2.0-alpha02

2020 年 4 月 15 日

发布了 androidx.media:media:1.2.0-alpha02版本 1.2.0-alpha02 中包含这些提交内容

bug 修复

  • 防止修改 VersionedParcelable 类

版本 1.2.0-alpha01

2019 年 10 月 23 日

发布了 androidx.media:media:1.2.0-alpha01版本 1.2.0-alpha01 中包含这些提交内容

API 变更

  • 添加了以下方法:
    • MediaSessionCompat.Callback.onSetPlaybackSpeed()
    • MediaControllerCompat.setPlaybackSpeed()
    • MediaControllerCompat.getSessionInfo()

bug 修复

  • 实施了防止在通过 IPC 调用传递 Bundle 对象时出现 BadParcelableException 的预防措施
  • MediaControllerCompat 的构造函数不再抛出 RemoteException
  • 实施了防止在 MediaSessionCompat.release() 之后调用回调方法的预防措施

版本 1.1.0

版本 1.1.0

2019 年 9 月 5 日

发布了 androidx.media:media:1.1.0。点击此处可查看此版本中包含的提交内容。

自 1.0.0 以来的重要变更

  • 引入了 AudioAttributesCompat

版本 1.1.0-rc01

2019 年 6 月 13 日

发布了 androidx.media:media:1.1.0-rc01,该版本与 1.1.0-beta02 相比没有变化。点击此处可查看此版本中包含的提交内容。

版本 1.1.0-beta02

2019 年 6 月 5 日

发布了 androidx.media:media:1.1.0-beta02。点击此处可查看此版本中包含的提交内容。

bug 修复

  • media2-session 使用的隐藏方法的限制范围已放宽到 LIBRARY_GROUP_PREFIX

版本 1.1.0-beta01

2019 年 5 月 7 日

发布了 androidx.media:media:1.1.0-beta01。点击此处可查看此版本中包含的提交内容。

新功能

  • 对于标记为 @NonNull 的 null 参数,已将 IllegalPointerException 更改为 NullPointerException

版本 1.1.0-alpha04

2019 年 4 月 3 日

发布了 androidx.media:media:1.1.0-alpha04。点击此处可查看此版本中包含的提交内容。

bug 修复

  • 略微调整了 version-compat-test 常量 (aosp/933656)

版本 1.1.0-alpha03

2019 年 3 月 21 日

发布了 androidx.media:media:1.1.0-alpha03。点击此处可查看此版本中包含的完整提交内容列表。

bug 修复

  • 修复了在多个 MediaBrowserCompat 尝试连接到 MedaBrowserServiceCompat 时后者发生崩溃的问题。(aosp/930246)

版本 1.1.0-alpha02

2019 年 3 月 13 日

发布了 androidx.media:media:1.1.0-alpha02。点击此处可查看此版本中包含的完整提交内容列表。

bug 修复

  • 修复了连接时 MediaBrowserCompat 发生崩溃的问题
  • 修复了 getCurrentBrowserInfo()/getBrowserRootHints() 中发生的 IllegalStateException
  • 使 MediaBrowserServiceCompat.getCurrentBrowserInfo() 针对 onGetRoot() 中的相同 MediaBrowserCompat 返回相同的 RemoteUserInfo 实例

版本 1.0.1

版本 1.0.1

2019 年 1 月 30 日

发布了 androidx.media:media 1.0.1

bug 修复

  • 修复了使用 MediaBrowserCompat.connect() 时出现的 IllegalStateException 意外 bug (aosp/858075)

版本 1.0.0

版本 1.0.0-alpha06

2018 年 12 月 17 日

API 变更

按以下方式对 media.widget 软件包和类进行了重命名:

  • androidx.media.widget.VideoView2androidx.media2.widget.VideoView
  • androidx.media.widget.MediaControlView2androidx.media2.widget.MediaControlView

版本 1.0.0-alpha01

2018 年 12 月 3 日

API 变更

  • 弃用了两个 MediaSessionCompat 标记:
    • FLAG_HANDLES_MEDIA_BUTTONS
    • FLAG_HANDLES_TRANSPORT_CONTROLS