Google Cast SDK 版本資訊

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

每次推出新版 Google Cast 時,我們會在下文說明變更,並更新 API 參考資料。如需設計檢查清單的相關異動,請參閱變更記錄

2022 年 10 月 17 日

Web 接收器 3.0.0105

2022 年 10 月 10 日

Android 寄件者 21.2.0

2022 年 8 月 8 日

Android 傳送者 21.1.0 和 Android TV 接收器 20.0.0

2022 年 3 月 31 日

Web Receiver 3.0.0103、MPL Player 1.0.0.113

  • 將預設的 Shaka 播放器版本升級至 3.2.2。
  • 已新增新的 API cast.framework.PlaybackConfig#shakaConfig,以覆寫 Shaka 播放器版本和其他 Shaka 選項。
  • 新增 cast.framework.ui.Controls#hasMediaControlsOverlay() API,用於查詢媒體控制項疊加層是否顯示在其應用程式上方。
  • 已為「喜歡」使用者動作新增樣式 cast.framework.ui.ControlsButton.LIKE_HEART
  • cast.framework.events.EventType.BREAK_CLIP_ENDED 事件資料的 currentMediaTime 值現在代表事件發生時,最近期中斷片段的目前時間。
  • 新增 cast.framework.PlayerManager#getRawCurrentTimeSec 方法,可傳回媒體元素的媒體時間。
  • 新增了 cast.framework.NetworkRequestInfo#timeoutInterval,可用於指定玩家要求的 HTTP 要求逾時。
  • 已修正解構 A/V 串流中 CEA 608/708 字幕解碼的 MPL 錯誤。
  • 已修正 MPL WebVTT 時間戳記剖析邏輯,以便接受小時值超過 2 位數。

2021 年 12 月 9 日

Android 傳送者 21.0.0

  • 加強對空值的安全缺失,進而改善對 Kotlin 的是否可為空值。Java 開發人員將不會受到影響。如果 Kotlin 開發人員現有的程式碼並非空值安全,可能會發生新的建構失敗問題。

2021 年 11 月 19 日

iOS 傳送者 4.7.0

2021 年 11 月 16 日

Android 傳送者 20.1.0

  • 注意事項:指定 Android 12 的應用程式必須更新至 Android 寄件者 20.1.0,以免執行階段當機。
  • 改善佇列
    • 將新的 itemsReorderedAtIndexes 回呼新增至 MediaQueue,以便在重新排序佇列時呼叫。
    • 新增對佇列指令序列化的支援。
  • 已將 RemoteMediaClient#queueSetRepeatMode 中的 customData 參數設為空值。
  • 遠端顯示功能已淘汰。
  • minSdkVersion 已從 14 升為 16。

2021 年 10 月 26 日

Web 接收器 3.0.0102

  • 升級至 Shaka 播放器 3.0.13 版,進而修正許多先前回報的問題。
  • 新增智慧螢幕和 Chromecast 上的次要圖片支援功能。
  • 修正問題:由於用於偵測重複的播放軌的邏輯發生錯誤,緩衝串流無法顯示字幕。
  • 修正問題:LOAD_BY_ENTITY 傳回錯誤時,不會觸發接收器的錯誤回呼。
  • 為傳輸串流新增高效率 AAC (HE-AAC) 音訊轉碼器的支援。
  • 已修正 PlayerManager.getStats() 無法傳回高度和寬度正確值的錯誤。
  • 已從 MediaStatus 訊息中移除 VAST 和 VMAP 資訊,以避免溢出可能導致傳送者與接收器中斷連線的溢位。
  • 修正問題:略過廣告時,系統不會將 endedReason 提供給寄件者。
  • 已修正在播放前,從廣告佇列中移除廣告插播的問題。
  • 已新增 cast.framework.message.QueueChange#reorderItemIds 欄位,其中包含受 QUEUE_CHANGE 作業影響的佇列項目清單。
  • 減少了在 MPL 即時串流時在 MPL 中切換音軌時的緩衝處理問題,因此音訊和影片現在會保持同步。
  • 已修正採用內嵌 CEA608/CEA708 字幕的 MPL 中的 HLS 串流剖析。
  • 暫停播放超過 5 秒時,Chromecast (支援 Google TV) 的媒體控制項將會隱藏。

2021 年 5 月 26 日

iOS 傳送者 4.6.1

  • 已修正允許背景執行功能的應用程式暫停背景投放工作階段的問題。

2021 年 5 月 17 日

iOS 傳送者 4.6.0

2021 年 4 月 29 日

Web 接收器 3.0.0096

2021 年 4 月 20 日

Android 傳送者 20.0.0 和 Android TV 接收器 18.0.0

2021 年 4 月 5 日

Web 接收器 3.0.0095

  • 將 Shaka Player 升級至 3.0.10 版。
  • 系統現在支援 STREAM_TRANSFER 媒體指令時,現在會顯示「投放」按鈕。
  • 在「媒體瀏覽」使用者介面底部新增建議列。建議列包含互動式方塊,使用者可以選擇播放媒體項目或捲動可用的媒體項目。每個晶片也都會對應至可用的 Google 助理指令。目前建議的語言,只有當系統語言已設為英文或日文時,系統才支援建議方塊。
  • 已修正 Chromecast (支援 Google TV) 將相片內容投放到預設接收端時,會顯示媒體控制項疊加層的問題。
  • 新增對 TRACKS_CHANGED 事件的支援。

2020 年 12 月 18 日

Web 接收器 3.0.0085

2020 年 12 月 3 日

iOS 寄件者 4.5.3

  • 已修正 GCKCredentialsData 的載入時間錯誤「架構 arm64 的未定義符號」。
  • 已修正有關 GCKCredentialsData 上發生衝突的編譯器錯誤。
  • 如果 Info.plist 中缺少必要的 Bonjour 服務項目,系統現在會記錄警告訊息。

2020 年 11 月 4 日

iOS 寄件者 4.5.2

  • 將 CocoaPods 中的 Protobuf 程式庫最低版本更新為 3.13。使用舊版 Protobuf 版本會導致 SDK 當機。
  • 這個版本獨家為 CocoaPods,且使用與 v4.5.1 相同的二進位檔。

2020 年 10 月 13 日

iOS 傳送者 4.5.1

  • 已修正自訂裝置選擇器 GCKUICastButton 無法反映正確的 Cast 狀態的問題。
  • 已修正「與傳回類型相衝突的是否可為空值指定碼」的警告。

2020 年 9 月 14 日

網路接收器

  • 將 Shaka Player 升級至 2.5.16。

iOS 傳送者 4.5.0

  • 新增對 iOS 14 的 Cast 裝置探索變更的支援,首次投放時需要使用者明確授權。詳情請參閱 iOS 14 的首次投放功能
  • 將最低 SDK 支援更新至 iOS 10。

2020 年 9 月 8 日

網路寄件者

2020 年 8 月 31 日

網路接收器

  • 新增在 DASH / #Stream 中 StreamS/EventStream 中的 #EXT-X-DATERANGE 的支援。

2020 年 8 月 3 日

iOS 寄件者 4.4.8

2020 年 7 月 29 日

Android 傳送者 19.0.0 和 Android TV 接收器 17.0.0

2020 年 7 月 13 日

網路接收器

  • 改善預設使用者介面 (影片和音訊) 的媒體類別偵測功能。
  • 新增 Shaka Player 的即時絕對時間支援。
  • 已修正 Nest Hub Max 裝置音訊故障的問題。
  • 將 Shaka Player 升級至 2.5.12。

2020 年 5 月 4 日

網路接收器

  • 您現在可以設定 Google 助理指令的逾時值。
  • 錯誤事件中現在會顯示詳細的 MPL 錯誤代碼。
  • 現在起,您可以使用 enforceSupportedCommands 標記來強制執行支援的媒體指令。
  • 修正播放期間中斷時回報的支援指令。
  • 修正 Google 助理重組載入要求的問題。
  • 已修正 getStats 值中的錯誤。

2020 年 3 月 12 日

網路接收器

  • 已將裝置功能IS_CBCS_SUPPORTED新增至deviceCapabilities
  • 將 Shaka Player 升級至 2.5.8。

2020 年 2 月 27 日

iOS 寄件者 v4.4.7

  • 針對未使用 SDK 中任何 UI 元件的應用程式,已修正實體音量按鈕。
  • 已修正再次按下下一頁或上一頁按鈕時,展開控制器中的 currentTime 標籤問題。
  • 應用程式移至背景後,GCKMediaQueue 中的媒體項目會保留下來。
  • UI 自訂更新:
    • 迷你控制器的進度列現在可自訂。
    • 「投放」對話方塊的導覽列和工具列的背景顏色現在已可自訂。
    • 已修正 iPhone X 專用的使用者介面問題。
  • 修正了一些問題:

2020 年 2 月 24 日

Android 傳送者 18.1.0

2020 年 1 月 22 日

網路接收器

  • 修正問題:變更支援的指令時,系統會播送多個媒體狀態。

接收器 v2

  • 改善 VAST 廣告的位元率選項。

MPL

2020 年 1 月 7 日

網路接收器

  • 已在 cast.framework.events.EmsgEvent 中新增對 ID3 限定時間中繼資料的支援。此外,HLS/CMAF 內容現已分派 EmsgEvent
  • 已修正在轉換至新的媒體工作階段時,在 PLAYER_LOAD_COMPLETE 中缺少播放器資料的問題。
  • 修正媒體圖示與廣告插播編號和倒數計時重疊的問題。
  • 修正問題:第一個廣告插播片段的倒數計時一律會顯示 0:00。
  • 將 Shaka Player 升級至 2.5.6。

網路接收器 v2

  • 已將裝置功能「IS_DEVICE_REGISTERED」新增至「deviceCapabilities」。如有設定,投放裝置會在 Cast 開發人員控制台中註冊,以便進行偵錯。
  • 修正停滯問題。
  • 現在,佇列中的每個失敗項目都會傳送個別的媒體錯誤訊息。

MPL

  • 修正即時串流的問題:在收到停止訊息後,音訊會繼續播放一段時間。
  • 修正影片品質等級變更時影片壓縮成果的問題。
  • 修正使用 *.m4s 區段的 HLS 串流失敗的問題。

2019 年 12 月 5 日

Android 傳送者 18.0.0

  • 新增 setMediaSessionEnabled 可讓開發人員啟用及停用 Cast SDK 建立的媒體工作階段。
  • 變更媒體工作階段在投放工作階段顯示的方式。如果啟用了媒體通知,則在投放工作階段期間一律會顯示通知。先前只有在背景執行時才會顯示應用程式。
  • 變更了一些媒體相關類別,以導入 Parcelable 介面。

2019 年 11 月 11 日

iOS 寄件者 v4.4.6

  • 修正 iOS 9 最低支援版本相關問題。

2019 年 10 月 7 日

網路接收器

  • 公開測試群組角色是測試群組中繼資料的一部分。
  • 將 Shaka Player 版本升級至 2.5.5。

2019 年 9 月 23 日

iOS 寄件者 v4.4.5

  • 加強投放裝置探索與工作階段管理功能的支援。
  • 已將新的媒體指令新增至 GCKMediaStatus
  • GCKAdBreakStatus 中新增了 whenSkippable 屬性。
  • Google Ads 和 iOS 13 的使用者介面修正項目。

2019 年 9 月 11 日

Android 傳送者 17.1.0

2019 年 9 月 9 日

網路接收器

  • TV_SHOW 中繼資料類型現已在下一個播放器中預先載入「接著播放」預覽項目。
  • 已將 ContentRating 類別新增至 cast.framework.messages 命名空間。
  • 已更新預設 UI 音訊標題,使 metadata.artist 的優先順序高於 metadata.albumArtist
  • 開始支援負值的 StartTime 值,以指出相對於內容結束或直播邊緣的開始時間。
  • 媒體瀏覽:
    • 現在系統會在使用者閒置 30 秒後自動隱藏媒體導覽匣。
    • 在媒體瀏覽重疊廣告的右上角,新增播放/暫停按鈕和媒體項目縮圖。
    • 更新媒體瀏覽清單行為。現在,每次設定「瀏覽媒體」內容時,水平捲動都會重設為初始最左邊的位置。
  • 修正錯誤:
    • 已延後解析 BasePlayer 的承諾,允許啟動媒體元素事件。
    • 廣告預先載入的處理載入錯誤。
    • 現在起,浮水印會與其他中繼資料一同顯示。
    • Chromecast 的預設音訊 UI 會遵循 .progressBar 樣式。
    • 避免在載入前和播放後續媒體項目之間啟動 IDLE 畫面。
    • 修正 Dash 內容的搜尋停滯畫面。

網路接收器 v2

  • 已將 ContentRating 類別新增至 cast.receiver.media 命名空間。
  • 修正錯誤:佇列中包含多個項目時,錯誤資料會錯誤傳播。

媒體播放器程式庫

  • 已將 HLS #EXT-X-MEDIA 屬性新增至 API。
  • 修正錯誤:
    • 修正 SourceBuffer remove() 作業失敗,導致音軌切換至當機播放的問題。
    • 已修正指定套裝音訊格式類型 (例如 *.ec3) 但使用 MPEG-4 區段 (例如 *.mp4、*.mp4a 等) 時的剖析問題。
    • 修正 HLS 問題,其中顯示頻帶 CEA608 字幕的延遲時間明顯明顯。
    • 修正不含無法載入音訊的 HLS 和流暢內容。

2019 年 8 月 27 日

網路寄件者

  • 網路寄件者現在使用新的自訂元素 v1 語法。這個版本取代了已淘汰的 v0
  • 使用新增至 Chrome M77 的新 getEstimatedBreakTimegetEstimatedBreakClipTimegetLiveSeekableRange 函式,修正 breakTimebreakClipTimeliveSeekableRange 已變更的事件。

2019 年 8 月 12 日

iOS 寄件者 v4.4.4

  • 改善 iOS 13 的使用體驗。
  • 改善 Cast 裝置探索支援功能。

2019 年 7 月 30 日

網路接收器

  • 將 Shaka Player 版本升級至 2.5.1。
  • 修正問題:內容載入過程中,中繼資料重疊會太快消失。
  • 已修正在攔截攔截器中拒絕以清除載入狀態的問題。
  • 已將 setBrowseContent 更新為可為空值。
  • 已修正在搜尋廣告插播時,回報目前時間不正確的問題。
  • 新增對 IgnoreTtmlPositionInfo 的支援,可忽略 TTML 字幕定位。
  • 改善處理載入錯誤的支援:
    • 避免觸發多個 MediaFinishedEvent
    • 觸發媒體管理員錯誤回呼,可在載入錯誤時清除播放器。

2019 年 7 月 22 日

iOS 寄件者 v4.4.3

  • 透過提供 error_reason 以改善載入錯誤的支援。
  • 發布不含訪客模式的 SDK 版本。

2019 年 6 月 17 日

Android 傳送者 17.0.0

  • 最新的 SDK 會從 Android 支援資料庫切換為 Jetpack (AndroidX) 程式庫,您必須在應用程式中進行以下變更,才能使用程式庫:
    • com.android.tools.build:gradle 升級至 3.2.1 以上版本。
    • compileSdkVersion 升級至 28 以上版本。
    • 更新應用程式以使用 Jetpack (AndroidX)。按照遷移至 AndroidX 中的指示操作。
  • 詳情請參閱 Android 版 Google API 版本資訊

2019 年 6 月 10 日

網路接收器

  • 推出對媒體瀏覽的支援,這項新功能可在智慧螢幕上探索內容。
  • 針對 9 個新語言代碼的預設 UI 新增本地化版本:
    • 丹麥文
    • 英文 (英國)
    • 英文 (印度)
    • 英文 (新加坡)
    • 法文 (加拿大)
    • 義大利文
    • 挪威文
    • 荷蘭文
    • 瑞典文
  • 從遠端藝術的相簿圖片中移除圓角。
  • 修正直播和其他區域的錯誤。

iOS 寄件者 v4.4.2

  • 訪客模式
    • 新增 Cast 開發人員控制台中「啟用訪客模式」選項的支援。
    • 修正訪客模式工作階段管理問題。
  • 修正錯誤
    • 已修正 4.4.1 版中的本地化問題。

2019 年 4 月 24 日

iOS 寄件者 v4.4.1

  • 推出 Alpha 版支援直播功能。詳情請參閱開發人員指南
    • 新增直播活動狀態的資料結構和屬性。
    • 已新增 GCKMediaMetadata 金鑰。
    • 新增直播活動媒體指令:
      • [GCKRemoteMediaClient loadMediaWithLoadRequestData:]
      • [GCKRemoteMediaClient findWithOptions:]
    • 改善控制器控制器 UI 以支援即時串流:
      • 已變更展開控制器的版面配置和外觀。
  • 修正錯誤
    • 已修正 iPhone X 上的 GCKUICastContainerViewController 底部。
    • 已修正作業系統在執行大量網路活動時重新連線的問題。
    • 已修正使用 GCKUICastButton 進行無障礙標籤初始化時發生的當機問題。

2019 年 4 月 23 日

網路接收器

  • 推出 Alpha 版支援直播功能。詳情請參閱開發人員指南
    • 更新使用者介面以支援直播 (包括直播指標)。
  • 已將 mediaCategory 欄位新增至媒體狀態,以表示媒體是影片、音訊或相片。
  • 修正錯誤
    • 已修正 playConfig.SegmentHandler 傳回值的用法。

媒體播放器程式庫

  • 已在 MPL 中為 HLS 新增 HEVC 轉碼器支援。

網路寄件者

  • 推出 Alpha 版支援直播功能。詳情請參閱開發人員指南
  • 廣告支援。詳情請參閱開發人員指南
    • 針對可略過廣告新增了 RemotePlayerController.skipAd()。

Android 寄件者 16.2.0

  • 推出 Alpha 版支援直播功能。詳情請參閱開發人員指南
    • 新增直播活動狀態的資料結構和屬性。
    • 已新增 MediaMetadata 金鑰。
    • 新增直播活動媒體指令:
      • RemoteMediaClient#load(MediaLoadRequestData)
      • RemoteMediaClient#seek(MediaSeekOptions)
    • 改善控制器控制器 UI 以支援即時串流:
      • 在展開的控制器使用者介面小工具中新增即時串流支援。
      • 已變更展開控制器的版面配置和外觀。
      • 推出與直播相容的 CastSeekBar 小工具,以取代原生的 SeekBar。
      • 已修改 ExpandedControllerActivity,以使用 CastSeekBar 而非 SeekBar,以便進行即時串流相容性。 ExpandedControllerActivity#getSeekBar() 現已淘汰, 將會傳回虛擬執行個體。
  • 已新增 MediaStatus#BRAND_STATE_LOADING 播放器狀態:
    • 當 Web 接收器開始載入媒體時,MediaStatus 中的 PlayerState 屬性會設為 MediaStatus#BRAND_STATE_LOADING,直到開始緩衝處理或播放內容時。
    • 在大多數情況下,應用程式處理這個狀態的方式和 MediaStatus#BRAND_STATE_BUFFERING 有關。
    • 緩衝區和載入狀態並非可互換。
    • 載入時,Web Receiver 尚未解析所有媒體資訊,因此傳送的媒體資訊僅限於傳送者的載入媒體要求。
    • 在緩衝處理期間,媒體資訊可能包含接收器解決的其他資訊。
  • 已修改媒體中繼資料以支援有聲書:
    • 已新增 MediaMetadata 金鑰。
    • 新增有聲書的中繼資料類型。

2019 年 3 月 25 日

網路接收器

  • document.registerElement() 用法改為 customElements.define(),讓 Web Receiver SDK 與較新版本的 Cast 平台相容。
  • MediaStatus.breakStatus 現已在內容出現廣告時段時傳回空白物件,但目前並未播放廣告插播。
  • 修正內嵌 VAST 代碼剖析的問題。

媒體播放器程式庫

  • 已修正切換音軌大約需要 20 秒的問題。

2019 年 2 月 13 日

網路接收器

  • 修正 Touch UI 的「略過廣告」按鈕突然出現的問題。
  • 修正顯示遙控器上的中斷資訊。

媒體播放器程式庫

  • 已修正預先載入媒體處理 LicenseUrl 的問題。

2019 年 2 月 5 日

iOS 寄件者 v4.3.5

  • 新增對有聲書中繼資料的支援,詳情請參閱 GCKMediaMetadata.h
  • 在 podspec 上設定正確的 static_framework 值。
  • 連線控制器中拆分導覽列和工具列的 styleAttributes。
  • 修正錯誤
    • 修正特定資料庫初始化失敗時異常終止的問題。
    • 已修正 Web Receiver 音量列在來電或鬧鐘響鈴時會發生的問題。
    • 修正探索期間特定委派方法的冗餘呼叫。
    • 已修正媒體佇列清單在最後最後一個項目播放完畢之後無法清除的問題。
    • 禁止在沒有網路連線的情況下顯示附近無法連線的裝置。
    • 針對無法控制音量的裝置,停用裝置檢視控制器上的音量滑桿。