広告のプリロードは、GMA Next-Gen SDK の広告読み込み機能です。広告をバックグラウンドで読み込み、表示する前にキャッシュします。広告のプリロードを使用してパフォーマンスを向上させるには、カスタム キャッシュを無効にして、その処理を GMA Next-Gen SDK に委任します。
GMA Next-Gen SDK の広告のプリロードでは、広告の読み込みとキャッシュが自動化されます。
広告のプリロードには、次のようなメリットがあります。
- 参照管理: 広告が表示されるまで参照を維持します。
- 自動再読み込み: キャッシュから広告が取得されると、新しい広告が読み込まれます。
- 管理された再試行: 広告の読み込みに失敗した場合に、新しい広告を読み込みます。
- 有効期限の処理: 有効期限が切れる前に広告を更新します。
- キャッシュの最適化: キャッシュの順序を最適化して、優先度の最も高い広告を配信します。
広告のプリロードとシングルロードの比較
アプリのフルスクリーン広告のデフォルトの統合として、広告のプリロードを使用します。
広告のプリロードと単一読み込み広告リクエストの比較は次のとおりです。
広告のプリロード
広告のプリロードを使用すると、次のようなメリットがあります。
- ライフサイクル管理の自動化: 広告のキャッシュ、有効期限のトラッキング、失敗したリクエストの再試行、広告の更新を GMA Next-Gen SDK に委任できます。カスタム ライフサイクル コードの作成やメンテナンスは必要ありません。キャッシュからプリロードされた広告を取得して表示すると、GMA Next-Gen SDK は自動的に代替広告を読み込みます。
- 移行ポイントで広告を準備する: ユーザーがレベルや画面を移動するときに広告を表示できるように、事前に広告をプリロードします。
- 最適化された広告の選択: GMA Next-Gen SDK でプリロード構成ごとに複数の広告を保存し、広告を表示するたびにキャッシュから優先度の最も高い広告を配信します。
1 回の負荷
単一読み込み広告リクエストは、個々の広告リクエストを直接管理する必要がある場合にのみ使用します。たとえば、次のような場合です。
- インバウンド メディエーション: パートナー入札などのサードパーティ メディエーション プラットフォームを介して GMA Next-Gen SDK をメディエーションする場合は、単一読み込みの広告リクエストを使用します。詳しくは、パートナー入札についてをご覧ください。 サードパーティ メディエーション SDK は、ウォーターフォール、キャッシュ、更新サイクルを管理するため、GMA Next-Gen SDK はアダプタの読み込み呼び出しごとに 1 つの広告リクエストを想定しています。
- カスタム広告リクエスト: 各リクエストの前に変更されるカスタム
AdRequestパラメータを設定する場合は、単一読み込み広告リクエストを使用します。PreloadConfigurationオブジェクトを更新すると、プリロードが再開され、キャッシュに保存された広告が消去されます。
広告のライフサイクル動作を比較する
次の表は、広告のプリロードとシングルロードで広告のライフサイクル動作がどのように処理されるかを比較したものです。
| 動作 | 広告のプリロード | シングルロード API |
|---|---|---|
| 店舗広告 | pollAd メソッドを呼び出すまで、読み込まれた広告を内部キャッシュに保存します。 |
アプリは、広告を表示するまで、読み込まれた広告オブジェクト参照をメンバー変数に保存する必要があります。 |
| 広告を再読み込みする | キャッシュから広告を取得すると、代替広告が自動的に読み込まれます。 | ユーザーが広告を閉じた後、または広告の表示に失敗した後に、アプリで load メソッドを手動で呼び出す必要があります。 |
| 失敗したリクエストの再試行 | 指数バックオフを使用して、失敗したリクエストを自動的に再試行します。 | 失敗したリクエストを処理するには、カスタムの再試行ロジックが必要です。 |
| 有効期限と更新 | 広告の有効期限を追跡し、キャッシュ内の期限切れの広告を自動的に更新します。 | アプリで有効期限を追跡し、手動で広告をリクエストする必要があります。 |
| キャッシュの最適化 | プリロード設定ごとに複数の広告を保存し、優先度の高い広告を最初に配信します。 | リクエストごとに 1 つの広告を読み込みます。キューやキャッシュの順序付けは組み込まれていません。 |
広告のプリロードのライフサイクル
広告のプリロードでは、手動の広告読み込み呼び出しが次のライフサイクル ステップに置き換えられます。
- 広告のプリロードを開始する: プリロード設定ごとに
startメソッドを 1 回呼び出します。実装の詳細については、アプリ起動時、インタースティシャル、リワード、リワード インタースティシャルをご覧ください。 - 事前読み込みされた広告を取得して表示する:
pollAdメソッドを呼び出してから、showメソッドを呼び出します。実装の詳細については、アプリ起動時、インタースティシャル、リワード、リワード インタースティシャルをご覧ください。 - 省略可: 広告のプリロードを停止する:
destroyメソッドまたはdestroyAllメソッドを呼び出します。実装の詳細については、アプリ起動時、インタースティシャル、リワード、リワード インタースティシャルをご覧ください。
プリロード キャッシュの上限
バッファサイズは、プリロード設定でメモリに保持されるプリロード広告の数を制御します。デフォルトでは、Google はメモリ消費量と広告配信のレイテンシのバランスを取るようにバッファサイズを最適化します。
GMA Next-Gen SDK は、すべての広告ユニットとプリロード ID にわたるプリロードされた広告の総数に、アプリ全体の上限を適用します。
- アプリ全体でのデフォルトの上限: GMA Next-Gen SDK では、すべてのフォーマットとプリロード ID で、最大 6 個のプリロード広告をメモリに保持できます。
- 推奨されるバッファサイズ: プリロード ID ごとにバッファサイズを 2 にすることをおすすめします。
次のステップ
GMA Next-Gen SDK は、フルスクリーン広告フォーマットの広告のプリロードをサポートしています。バナー広告フォーマットとネイティブ広告フォーマットでは、広告のプリロードは使用されません。バナー広告は広告ユニットの設定に基づいて自動的に更新され、ネイティブ広告は NativeAdLoader クラスを使用します。
選択した広告フォーマットに広告のプリロードを統合するか、起動時のレイテンシを最適化します。