Unity プラグインのインタースティシャル実装 - レガシー API (SDK < 8.4.0)

Before you start
ironSource Unity プラグインと追加のアドネットワークアダプターがアプリケーションに正しく実装されていることを確認してください。

実装の概要はこちら

SDK 8.4.0 以降サポートされているマルチ広告ユニット API はこちら

ステップ 1. インタースティシャルイベントを実装する

ironSource Unity プラグインは、広告のアベイラビリティを通知するためにいくつかのイベントを発火します。

以下のコードを追加してイベントに登録します:

// Add AdInfo Interstitial Events
IronSourceInterstitialEvents.onAdReadyEvent += InterstitialOnAdReadyEvent;
IronSourceInterstitialEvents.onAdLoadFailedEvent += InterstitialOnAdLoadFailed;
IronSourceInterstitialEvents.onAdOpenedEvent += InterstitialOnAdOpenedEvent;
IronSourceInterstitialEvents.onAdClickedEvent += InterstitialOnAdClickedEvent;
IronSourceInterstitialEvents.onAdShowSucceededEvent += InterstitialOnAdShowSucceededEvent;
IronSourceInterstitialEvents.onAdShowFailedEvent += InterstitialOnAdShowFailedEvent;
IronSourceInterstitialEvents.onAdClosedEvent += InterstitialOnAdClosedEvent;

プラグインは、以下にリストされているすべての発生しうるイベントをリスナーに通知します:

/************* Interstitial AdInfo Delegates *************/
// Invoked when the interstitial ad was loaded succesfully.
void InterstitialOnAdReadyEvent(IronSourceAdInfo adInfo) {
}
// Invoked when the initialization process has failed.
void InterstitialOnAdLoadFailed(IronSourceError ironSourceError) {
}
// Invoked when the Interstitial Ad Unit has opened. This is the impression indication. 
void InterstitialOnAdOpenedEvent(IronSourceAdInfo adInfo) {
}
// Invoked when end user clicked on the interstitial ad
void InterstitialOnAdClickedEvent(IronSourceAdInfo adInfo) {
}
// Invoked when the ad failed to show.
void InterstitialOnAdShowFailedEvent(IronSourceError ironSourceError, IronSourceAdInfo adInfo) {
}
// Invoked when the interstitial ad closed and the user went back to the application screen.
void InterstitialOnAdClosedEvent(IronSourceAdInfo 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. 
void InterstitialOnAdShowSucceededEvent(IronSourceAdInfo adInfo) {
}

ステップ 2. インタースティシャル広告をロードする

インタースティシャル広告は、初期化完了コールバックを受信した後にリクエストすることをお勧めします。インタースティシャル広告をリクエストするには、次のメソッドを呼びます:

IronSource.Agent.loadInterstitial();
Note:  アプリケーションで複数のインタースティシャル広告を配信する場合は、前のインタースティシャル広告を表示して閉じた後で、この手順を繰り返す必要があります。InterstitialOnAdClosedEvent が発火されると、新しいインタースティシャル広告をロードできるようになります。

ステップ 3. 広告のアベイラビリティを確認する

ステップ 2loadInterstitial を呼び出した後、広告がロードされ、ユーザーに表示する準備ができたときに通知が届きます。InterstitialOnAdReadyEvent は、広告が配信可能な状態を示すアベイラビリティについて通知します。

public void InterstitialOnAdReadyEvent(){}

さらに、次の関数を呼ぶことにより、広告のアベイラビリティを直接リクエストすることができます:

IronSource.Agent.isInterstitialReady()
インタースティシャル広告を短期間で連続してリクエストすることはお勧めしません。この時点で利用できる在庫がある可能性は低いため、短期間での多数のリクエストによって得られるメリットはありません。

ステップ4. インタースティシャル広告を表示する

onInterstitialAdReadyEvent コールバックを受信したら、ユーザーにインタースティシャル広告を表示する準備が整いました。最適な広告体験をユーザーへ提供するために、広告を表示する前にゲームアクション・オーディオなどを止める事を忘れないでください。

次のメソッドを呼んで、インタースティシャル広告をユーザーに配信します。

IronSource.Agent.showInterstitial();

LevelPlay の広告プレースメントを使用すると、インタースティシャル広告体験をカスタマイズおよび最適化できます。このツールを使用すると、さまざまな場所(アプリの起動、レベル間など)でユーザーにインタースティシャル広告を表示できます。以下の関数を使用して、広告を表示するプレースメントを指定できます。詳細については、広告プレースメントのドキュメントをご覧ください。

void showInterstitial(string placementName);

LevelPlay の広告プレースメントに加えて、選択したプレースメントの広告表示回数上限であるキャップと、上限と広告表示間隔であるペースが設定できるようになりました。キャッピングとペーシングは、定義された時間枠内に配信される広告の再生回数を制限することにより、アプリのユーザー体験を向上させます。キャッピングとペーシングについての詳細は、こちらをご覧ください。

ユーザーにインタースティシャルを配信する前に、プレースメントが上限に達したかを確認するため、以下の関数を呼ぶ事をお勧めします:

IronSource.Agent.isInterstitialPlacementCapped(placementName)
重要!ステップ 4 を正常に完了すると、ユーザーにインタースティシャル広告が表示されます。別のインタースティシャル広告を配信する場合は、ステップ 2 を繰り返して、追加のインタースティシャルをリクエストする必要があります。

完了!
インタースティシャルメディエーションプラットフォームを介して LevelPlay インタースティシャル広告を配信できるようになりました。


次のステップは?
実装ガイドに従って、メディエーションプラットフォームに追加のインタースティシャルアドネットワークを設定するか、追加の広告ユニットを実装します: