媒體

與其他應用程式共用媒體內容和控制項。已由 media2 取代。
最新版 穩定版 候選版 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")
}

如要進一步瞭解依附元件,請參閱「新增建構依附元件」。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件

1.7 版

1.7.0 版

2023 年 11 月 29 日

發布 androidx.media:media:1.7.01.7.0 版包含以下修訂項目。

自 1.6.0 版之後的重要變更

  • 可在 MediaButtonReceiver 中偵測 ForegroundServiceStartNotAllowedException,並將其轉送至 onForegroundServiceStartNotAllowedException(I0c939)。
  • 新增 BROWSER_SERVICE_EXTRAS_KEY_FAVORITES_MEDIA_ITEM,傳遞 MediaBrowserCompat 根額外項目中所收藏的媒體項目 (Id3a11)。
  • 新增額外項目,以在 MediaBrowserCompat 根額外項目和 MediaItem 說明中設定自訂瀏覽動作 (Iab163)。
  • 修正在舊版 Android 上從 MediaBrowserService.onLoadChildren 傳回空值而導致的 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-beta011.7.0-beta01 版包含此連結所列的修訂項目。

修正錯誤

  • 修正 MediaBrowserServiceMediaBrowserServiceCompat 的潛在記憶體流失問題。b/37137738
  • 修正在舊版 Android 上從 MediaBrowserService.onLoadChildren 傳回空值而導致的 IllegalStateException

1.7.0-alpha01 版

2023 年 2 月 8 日

發布 androidx.media:media:1.7.0-alpha011.7.0-alpha01 版包含以下修訂項目。

新功能

  • 可在 MediaButtonReceiver 中偵測 ForegroundServiceStartNotAllowedException,並將其轉送至 onForegroundServiceStartNotAllowedException (I0c939)。
  • 新增 BROWSER_SERVICE_EXTRAS_KEY_FAVORITES_MEDIA_ITEM,傳遞 MediaBrowserCompat 根額外項目中所收藏的媒體項目 (Id3a11)。
  • 新增額外項目,以在 MediaBrowserCompat 根額外項目和 MediaItem 說明中設定自訂瀏覽動作 (Iab163)。

1.6.0 版

1.6.0 版

2022 年 4 月 20 日

發布 androidx.media:media:1.6.01.6.0 版含有這些修訂版。

自 1.5.0 版之後的重要變更

  • 新增必要的額外項目,以便使用 CarAppLibrary 為 Android Auto 適用的媒體應用程式設定登入/設定頁面。

1.6.0-rc01 版

2022 年 4 月 6 日

發布 androidx.media:media:1.6.0-rc011.6.0-rc01 版包含此連結所列的修訂項目。

1.6.0-beta01 版

2022 年 3 月 23 日

發布 androidx.media:media:1.6.0-beta011.6.0-beta01 版包含此連結所列的修訂項目。

  • 自上次 Alpha 版發布以來沒有任何異動。

1.6.0-alpha01 版

2022 年 2 月 23 日

發布 androidx.media:media:1.6.0-alpha011.6.0-alpha01 版包含此連結所列的修訂項目

API 變更

  • 新增必要的額外項目,以便使用 CarAppLibrary 為 Android Auto 適用的媒體應用程式建立登入/設定頁面。(Ifb3ca)

1.5 版本

1.5.0 版本

2022 年 2 月 9 日

發布 androidx.media:media:1.5.01.5.0 版包含此連結所列的修訂項目

自 1.4.0 版以來的重要異動

  • AudioManagerCompat 新增 isVolumeFixed
  • 新增單一項目樣式和完成百分比的 MediaConstants
  • 如果 API 級別在 30 以上,程式庫不會插入 MediaBrowserCompat 的套件瀏覽權限篩選條件。您必須在應用程式資訊清單中指定 <queries> 元素。
  • 針對 API 21 修正 getMediaDescription() 額外項目的未預期變更。
  • 針對 API 19 防止發生某些 IllegalStateException
  • 修正 MediaSessionCompat 在指定 Android 12 時異常終止的問題。
  • 修正 NotificationCompat 在 KitKat 上異常終止的問題。

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-alpha011.5.0-alpha01 版包含此連結所列的修訂項目

新功能

  • 將媒體的核心依附元件更新至 1.6.0

API 變更

  • 為 AudioManagerCompat 新增 isVolumeFixed。
  • 新增單一項目樣式和完成百分比的 MediaConstants。

修正錯誤

  • 如果 API 級別在 30 以上,程式庫不會插入 MediaBrowserCompat 的套件瀏覽權限篩選條件。您必須在應用程式資訊清單中指定 <queries> 元素。
  • 針對 API 21 修正 getMediaDescription() 額外項目的未預期變更。
  • 為 ArrayList 設定預設大小,藉此修正其使用效率不佳的問題。
  • 針對 API 19 防止發生某些 LegalStateException。
  • 修正 MediaSessionCompat 在指定 Android 12 時異常終止的問題。
  • 修正 NotificationCompat 在 KitKat 上異常終止的問題。

1.4 版本

1.4.3 版本

2021 年 10 月 13 日

發布 androidx.media:media:1.4.31.4.3 版本包含這些修訂版本。

修正錯誤

  • 程式庫不會再插入 MediaBrowserCompat 的套件瀏覽權限篩選條件。如果指定的 API 級別在 30 以上,請在應用程式資訊清單中指定 <queries> 元素。(I0a964b/185314633)

1.4.2 版本

2021 年 9 月 15 日

發布 androidx.media:media:1.4.21.4.2 版本包含這些修訂版本。

修正錯誤

  • 針對 API 21 修正 getMediaDescription() 的副作用 (I5c05f)

1.4.1 版本

2021 年 8 月 4 日

發布 androidx.media:media:1.4.11.4.1 版本包含這些修訂版本。

修正錯誤

  • 修正用於建立 PendingIntent 的可變動標記,以免指定 Android S 時異常終止。
  • 修正 NotificationCompat.MediaStyle 的 ClassVerificationFailure。

1.4.0 版本

2021 年 7 月 21 日

androidx.media:media:1.4.0 發布。1.4.0 版包含此連結所列的修訂項目

自 1.3.0 版以來的重要異動

  • 在 MediaMetadataCompat 中加入了新的套裝索引鍵 METADATA_KEY_SERIES_CONTENT_ID,可用於電視影集的媒體內容 ID
  • 在 MediaMetadataCompat 中加入了新的套裝索引鍵 METADATA_KEY_NEXT_EPISODE_CONTENT_ID,可用於電視單集的下一集內容 ID
  • 淘汰 MediaControllerCompat.TransportControls#EXTRA_LEGACY_STREAM_TYPE 並改為新增 MediaConstants#TRANSPORT_CONTROLS_EXTRAS_KEY_LEGACY_STREAM_TYPE
  • 為 playFromUri 新增額外的索引鍵,用於隨機播放媒體
  • 為 Result 類別新增 @Nullable 註解
  • 修正 MediaButtonReceiver 缺少意圖 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 變更

  • MediaMetadataCompat 中加入了新的套裝索引鍵 METADATA_KEY_SERIES_CONTENT_ID,可用於電視影集的媒體內容 ID

  • MediaMetadataCompat 中加入了新的套裝索引鍵 METADATA_KEY_NEXT_EPISODE_CONTENT_ID,可用於電視單集的下一集內容 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)

修正錯誤

  • 修正 MediaButtonReceiver 缺少意圖 EXTRA_KEY_EVENT 的問題 (If7557)

1.3.1 版本

1.3.1 版本

2021 年 5 月 5 日

發布 androidx.media:media:1.3.1查看 1.3.1 版的修訂項

修正錯誤

  • 修正 MediaButtonReceiver 缺少意圖 EXTRA_KEY_EVENT 的問題 (If7557)

1.3.0 版本

1.3.0 版本

2021 年 4 月 7 日

發布 androidx.media:media:1.3.01.3.0 版包含以下修訂項目。

自 1.2.0 版以來的重大異動

  • 將 Android Auto 額外項目遷移至 MediaConstants。

1.3.0-rc02 版本

2021 年 3 月 24 日

發布 androidx.media:media:1.3.0-rc021.3.0-rc02 版包含以下修訂項目。

修正錯誤

  • FLAG_IMMUTABLE 設為 MediaButtonReceiver 的 PendingIntent,這是指定 Android 12 的應用程式必備的設定。
  • 針對 API 27 修正 MediaSessionCompat 中在 setCallback(null) 後發生的 NullPointerException

1.3.0-rc01 版本

2021 年 3 月 10 日

發布 androidx.media:media:1.3.0-rc011.3.0-rc01 版本包含這些修訂版本。

1.3.0-beta01 版以來皆無異動。

1.3.0-beta01 版本

2021 年 2 月 10 日

發布 androidx.media:media:1.3.0-beta011.3.0-beta01 版包含此連結所列的修訂項目。

API 變更

  • 新增了 PlaybackStateCompat.ACTION_SET_PLAYBACK_SPEED 常數。(I9d076)
  • 將 Android Auto 額外項目遷移至 MediaConstants。(I290ab)
  • 新增可限制 MediaBrowserService 根子項的常數。(Ifcebd)

修正錯誤

  • 為媒體按鈕的待處理意圖新增 FLAG_RECEIVER_FOREGROUND

1.2.1 版本

Media 1.2.1 版本

2020 年 12 月 2 日

androidx.media:media:1.2.1 發布。查看 1.2.1 版的修訂項目

修正錯誤

  • 修正在 API 27 中呼叫 MediaSessionCompat#setCallback(null) 後發生的 NPE

1.2.0 版本

1.2.0 版本

2020 年 9 月 16 日

發布 androidx.media:media:1.2.01.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 額外項目中的媒體 ID 新增 MediaConstants#PLAYBACK_STATE_EXTRAS_KEY_MEDIA_ID,此新增項目應與目前中繼資料的 MediaMetadataCompat#METADATA_KEY_MEDIA_ID 相同。

修正錯誤

  • 修正 AudioAttributesCompat.Builder#setContentType 的問題

1.2.0-alpha04 版本

2020 年 6 月 24 日

發布 androidx.media:media:1.2.0-alpha041.2.0-alpha04 版包含此連結所列的修訂項目。

新功能

  • 為 mediarouter 程式庫提供音量控制支援機制

API 變更

  • 新增 AudioManagerCompat#getStreamMaxVolume
  • 新增了 AudioManagerCompat#getStreamMinVolume

修正錯誤

  • 修正 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

修正錯誤

  • 修正了 RemoteUserInfoequals() 問題

1.2.0-alpha02 版本

2020 年 4 月 15 日

發布 androidx.media:media:1.2.0-alpha021.2.0-alpha02 版包含以下修訂項目。

修正錯誤

  • 防止 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()

修正錯誤

  • 透過 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。您可以前往這裡查看這個版本包含的修訂項目。

修正錯誤

  • media2-session 所使用的隱藏方法限制範圍已放寬為 LIBRARY_GROUP_PREFIX

1.1.0-beta01 版本

2019 年 5 月 7 日

發布了 androidx.media:media:1.1.0-beta01。您可以前往這裡查看這個版本包含的修訂項目。

新功能

  • 針對標示為 @NonNull 的空值引數,將 IllegalPointerException 變更為 NullPointerException

1.1.0-alpha04 版本

2019 年 4 月 3 日

發布 androidx.media:media:1.1.0-alpha04。您可以前往這裡查看這個版本包含的修訂項目。

修正錯誤

1.1.0-alpha03 版本

2019 年 3 月 21日

androidx.media:media:1.1.0-alpha03 發布。您可以前往這裡查看這個版本包含的修訂項目完整清單。

修正錯誤

  • 修正 MedaBrowserServiceCompat 在多個 MediaBrowserCompat 嘗試連線時異常終止的問題。(aosp/930246)

1.1.0-alpha02 版本

2019 年 3 月 13 日

androidx.media:media:1.1.0-alpha02 發布。您可以前往這裡查看這個版本包含的修訂項目完整清單。

修正錯誤

  • 修正 MediaBrowserCompat 在連線時異常終止的問題
  • 修正了 getCurrentBrowserInfo()/getBrowserRootHints() 中發生的 IllegalStateException
  • MediaBrowserServiceCompat.getCurrentBrowserInfo()onGetRoot() 中針對同一個 MediaBrowserCompat 傳回同一個 RemoteUserInfo 例項

1.0.1 版本

1.0.1 版本

2019 年 1 月 30 日

androidx.media:media 1.0.1 發布。

修正錯誤

  • 修正了使用 MediaBrowserCompat.connect() 時發生未預期 LegalStateException 的錯誤 (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