改善 IMA 載入時間

IMA SDK 會載入依附元件,以便要求動態廣告插播 (DAI) 串流、評估可視度和回報廣告曝光次數。在提出串流要求之前先初始化 IMA,即可在串流播放前盡可能延長 IMA 依附元件的載入時間。本頁說明如何在應用程式中處理 IMA 載入時間。

撥打 ImaSdkFactory.initialize()

ImaSdkFactory.initialize() 方法會在第一個串流要求之前,開始預先載入 SDK 資源。如要使用 initialize(),您必須使用 IMA 3.35.1 以上版本。

在應用程式啟動時或在應用程式生命週期初期 (視應用程式結構而定) 呼叫 ImaSdkFactory.initialize()initialize() 呼叫會使用下列參數:

  • context:使用應用程式背景資訊,這種資訊在應用程式的生命週期中一律可用。
  • settings:傳遞已設定值的 ImaSdkSettings 物件。initialize() 呼叫中使用的 IMA 設定必須與 createAdsLoader() 呼叫中使用的設定值相同。IMA SDK 會使用這些設定 (特別是語言設定) 來建立快取索引鍵。我們不建議您在 initialize() 方法呼叫中使用的設定中使用測試值或假值,因為可能會發生快取遺漏,並增加廣告載入時間。

重複使用 AdsLoader 例項

為縮短 IMA 載入時間,建議您重複使用相同的 AdsLoader 例項。AdsLoader 介面可處理多個廣告或串流要求。請避免為每個要求建立新的 AdsLoader 例項。建立新的 AdsLoader 例項需要花費時間進行載入,並使用額外的裝置資源。

提前要求串流內容以便播放

如果您在開始串流播放之前已能存取 AdsLoader 例項,也可以提早呼叫 AdsLoader.requestStream() 方法。這項呼叫會開始載入 DAI 串流。當使用者準備開始串流播放時,請呼叫 StreamManager.init() 方法,初始化串流播放。