Android のインタースティシャル実装 - レガシー API (SDK < 8.4.0)
Unity LevelPlay インタースティシャルはフルスクリーンの広告ユニットであり、通常はアプリのライフサイクル中の自然な移行ポイントで配信されます。
Before you startステップ 1. リスナーを実装する
ironSource SDK は、インタースティシャルのアクティビティを通知するためにいくつかのイベントを発火します。SDK は、以下にリストされている発生しうる全てのイベントをデリゲートに通知します:
IronSource.setLevelPlayInterstitialListener(new LevelPlayInterstitialListener() {
// Invoked when the interstitial ad was loaded successfully.
// AdInfo parameter includes information about the loaded ad
@Override
public void onAdReady(AdInfo adInfo) {}
// Indicates that the ad failed to be loaded
@Override
public void onAdLoadFailed(IronSourceError error) {}
// Invoked when the Interstitial Ad Unit has opened, and user left the application screen.
// This is the impression indication.
@Override
public void onAdOpened(AdInfo adInfo) {}
// Invoked when the interstitial ad closed and the user went back to the application screen.
@Override
public void onAdClosed(AdInfo adInfo) {}
// Invoked when the ad failed to show
@Override
public void onAdShowFailed(IronSourceError error, AdInfo adInfo) {}
// Invoked when end user clicked on the interstitial ad
@Override
public void onAdClicked(AdInfo adInfo) {}
// Invoked before the interstitial ad was opened, and before the InterstitialOnAdOpenedEvent is reported.
// This callback is not supported by all networks, and we recommend using it only if
// it's supported by all networks you included in your build.
@Override
public void onAdShowSucceeded(AdInfo adInfo) {}
});
- コールバックが常にメインスレッドで実行されているとは限りません。ironSource コールバックから生じる UI インタラクションまたは更新は、実行する前にメインスレッドに渡す必要があります。
- リスナーは必ず SDK を初期化する前に設定してください。これにより、SDK がすべての関連情報を送信できるようになります。
リスナーの完全な実装については、こちらで確認できます。
ステップ 2. インタースティシャル広告をロードする
インタースティシャル広告は、初期化完了コールバックを受信した後にリクエストすることをお勧めします。
インタースティシャル広告をリクエストするには、次のメソッドを呼びます:
IronSource.loadInterstitial();
ステップ 3. 広告のアベイラビリティを確認する
ステップ 2 で loadInterstitial を呼び出した後、onAdReady という広告のアベイラビリティを知らせるメソッドでリスナーを介して広告が読み込まれると通知されます。
public void onAdReady() {}
さらに、次の関数を呼び出して広告のアベイラビリティを直接取得することもできます:
boolean isInterstitialReady();
インタースティシャル広告が利用可能になると、ユーザーに広告を表示できるようになります。LevelPlay の広告プレースメントを使用すると、インタースティシャル体験をカスタマイズおよび最適化できます。このツールを使用すると、さまざまな場面(アプリの起動、レベル間など)でユーザーにインタースティシャル広告を表示することができます。次のステップの関数を使用して、広告を表示するプレースメントを指定できます。さらに、特定の広告プレースメントの詳細を取得するには、次の関数を呼びます:
InterstitialPlacement getInterstitialPlacementInfo(String placementName)
LevelPlay の広告プレースメントに加えて、選択したプレースメントの広告表示回数上限であるキャップと、上限と広告表示間隔であるペースが設定できるようになりました。キャッピングとペーシングは、特定の時間内に配信される広告の量を制限することにより、アプリのユーザー体験を向上させます。
ユーザーにインタースティシャルを配信する前に、プレースメントが上限に達したかを確認するため、以下の関数を呼ぶ事をお勧めします:
IronSource.isInterstitialPlacementCapped(placementName)
詳細については、広告プレースメントのドキュメントをご覧ください。
ステップ 4. インタースティシャル広告を表示する
onInterstitialAdReady コールバックを受信したら、ユーザーにインタースティシャル広告を表示する準備が整いました。ユーザーへベストな広告体験を提供できる様、広告を表示する前にゲームアクション・オーディオなどを止める事を忘れないでください。
次のメソッドを呼んで、インタースティシャル広告をユーザーに配信します:
IronSource.showInterstitial(placementName);
ステップ 4. インタースティシャル広告を表示する
onInterstitialAdReady コールバックを受信したら、ユーザーにインタースティシャル広告を表示する準備が整いました。ユーザーへベストな広告体験を提供できる様、広告を表示する前にゲームアクション・オーディオなどを止める事を忘れないでください。
次のメソッドを呼んで、インタースティシャル広告をユーザーに配信します:
IronSource.showInterstitial(placementName);
完了!
これで、アプリでインタースティシャルを配信する準備が整いました!
実装ガイドに従って、メディエーションプラットフォームに追加のインタースティシャルアドネットワークを設定するか、追加の広告ユニットを実装します: