IMA の読み込み時間を短縮

IMA SDK は、広告のリクエスト、視認性の測定、広告インプレッションのレポート作成に必要な依存関係を読み込みます。広告リクエストを行う前に 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.requestAds() メソッドを早めに呼び出すこともできます。この呼び出しを行うと、プレロール広告の読み込みが開始されます。ユーザーがコンテンツの再生を開始する準備ができたら、AdsManager.init() メソッドを呼び出し、LOADED イベントを待って広告を再生します。