# Adobe AIR 向けインタースティシャル広告のインテグレーション

> LevelPlay SDKを使用して、イベントリスナーや広告配置設定など、インタースティシャル広告をAdobe AIRアプリケーションに統合します。

インタースティシャル広告単位の使用を開始するには、いくつかの簡単な手順を実行します。

1. **リスナーの実装**
2. **ロード インタースティシャル広告**
3. **広告の可用性の確認**
4. ****Show インタースティシャル広告****

## 前提条件##prerequisites

ironsource Adobe AIR プラグインが正しく統合されていることを確認します。インテグレーションの概要は[こちら](/grow/levelplay/sdk/adobe/air-plugin-integration.md)です。

## ステップ 1. インタースティシャルリスナーの実装##step-1.-implement-the-interstitial-listener

ironsource Adobe AIR プラグインは、インタースティシャルアクティビティーを通知するいくつかのイベントを発生させます。これらのイベントを受け取るには、Interstitial EventListener を実装する必要があります。

```text
IronSource.instance.addEventListener( "EventName", functionToCall  );
```

* **EventName** ＝ リッスンするイベントを含む文字列
* **functionToCal**l ＝ イベントが発生したときに呼び出す機能。

ironsource Adobe AIR プラグインは、次にリストされるすべてのイベントをリスナーに通知します。

```java
IronSource.instance.addEventListener("levelPlayInterstitialAdReady", levelPlayInterstitialAdReady);
IronSource.instance.addEventListener("levelPlayInterstitialAdLoadFailed", levelPlayInterstitialAdLoadFailed);
IronSource.instance.addEventListener("levelPlayInterstitialAdOpened", levelPlayInterstitialAdOpened);
IronSource.instance.addEventListener("levelPlayInterstitialAdShowSucceeded", levelPlayInterstitialAdShowSucceeded);
IronSource.instance.addEventListener("levelPlayInterstitialAdShowFailed", levelPlayInterstitialAdShowFailed);
IronSource.instance.addEventListener("levelPlayInterstitialAdClicked", levelPlayInterstitialAdClicked);
IronSource.instance.addEventListener("levelPlayInterstitialAdClosed", levelPlayInterstitialAdClosed);
```

プラグインは、以下のすべての可能なイベントをリスナーに通知します。

```java
private function levelPlayInterstitialAdClosed(event:Event):void {
   //level Play Interstitial Ad Closed
}
private function levelPlayInterstitialAdClicked(event:Event):void {
   //level Play Interstitial Ad Clicked
}
private function levelPlayInterstitialAdShowFailed(event:Event):void {
   //level Play Interstitial Ad Show Failed
}
private function levelPlayInterstitialAdShowSucceeded(event:Event):void {
   //on Ad Show level Play Interstitial Ad Show Succeeded
}
private function levelPlayInterstitialAdOpened(event:Event):void {
   //on Ad level Play Interstitial Ad Opened
}
private function levelPlayInterstitialAdLoadFailed(event:Event):void {
   //level Play Interstitial Ad Load Failed
}
private function levelPlayInterstitialAdReady(event:Event):void {
   //level Play Interstitial Ad Ready
}

```

* ****onAdlevelPlayInterstitialAdOpened**** イベントは、広告形式がアプリケーション画面に引き継がれたことを伝えますが、広告が正常に終了ユーザーに配信されたことを示すものではありません。
* **onAdShowlevelPlayInterstitialAdShowSucceeded** イベントは、Ironsource またはその他の広告ネットワークからのインタースティシャル広告が正常に終了ユーザーに配信されたことを示します。
* Ironsource は、インテグレーション中または本番稼働中に発生する可能性のあるエラーを理解するのにヘルプエラーコードメカニズムを提供します。以下のように DataEvent オブジェクトからデータを抽出します。

  ```java
  var errorCode:String;
  var errorDescription:String;
                  
  if(event.data){
     var error:Object = JSON.parse(event.data);
     errorDescription = error.error_description;
     errorCode = error.error_code;
  }
  ```

  ironsource エラーコードの詳細な説明は[、こちら](/grow/levelplay/sdk/ios/advanced-settings.md)を参照してください。

> **Note:**
>
> コールバックが常にメインスレッドで実行されていることは想定しないでください。Ironsource コールバックに起因する UI インタラクションや更新は、実行前にメインスレッドに渡す必要があります。

## ステップ 2. ロード インタースティシャル広告##step-2.-load-interstitial-ad

インタースティシャル広告のリクエストは、ロード処理に時間がかかる場合があるため、ユーザーに表示する前に少し待つことをお勧めします。インタースティシャル広告をリクエストするには、以下のメソッドを呼び出します。

```java
IronSource.instance.loadInterstitial();
```

> **Note:**
>
> アプリケーションで複数のインタースティシャル広告を配信する場合は、前のインタースティシャル広告を表示**して閉じた**後に、このステップを繰り返す必要があります。**levelPlayInterstitialAdClosed** イベントが発生すると、新しいインタースティシャル広告をロードできるようになります。

## ステップ 3. 広告の可用性の確認##step-3.-check-ad-availability

**loadInterstitial** を呼び出した後、広告がロードされ、ユーザーに表示する準備ができたときに通知されます。**levelPlayInterstitialAdReady** イベントは、広告の可用性について通知します。

```java
 private function levelPlayInterstitialAdReady(event:Event):void {
}
```

インタースティシャル広告が利用できない場合は、 **levelPlayInterstitialAdLoadFailed** イベントを受け取ります。

```java
private function levelPlayInterstitialAdLoadFailed(event:Event):void {
}
```

## ステップ 4. インタースティシャルを表示##step-4.-show-an-interstitial

使用可能なインタースティシャルが見つかったら、以下のメソッドを呼び出してこの広告をユーザーに表示する準備ができます。

```java
IronSource.instance.showInterstitial();
```

ironsource Ad Placements を使用すると、インタースティシャル体験をカスタマイズおよび最適化できます。このツールを使用すると、さまざまな場所 (例えば、アプリケーションの起動やレベル間) でユーザーにインタースティシャル広告を表示できます。以下の機能を使用して、広告を表示する正確な配置を定義できます。

```java
IronSource.instance.showInterstitial(YOUR_PLACEMENT_NAME);
```

ironsource Ad Placements に加えて、選択したプレースメントの上限とペーシングを設定できるようになりました。制限とペーシングは、定義された期間内に配信される広告の量を制限することで、アプリケーションのユーザー エクスペリエンスを向上させます。

これで、アプリケーションでインタースティシャル広告を配信できます。

> **Note:**
>
> これがアプリケーションの新しいインテグレーションである場合、アプリケーションはデフォルトで Ironsource ダッシュボードの '**Test Mode**' になります。アプリケーションがテストモードの間、ironSourc SDK は SDK プロセスの可視性を高めるために、より多くのログをコンソールに出力します。稼働中の広告インベントリをオンにするまで、収益が発生しないテストキャンペーンが配信されます。アプリケーションの広告インベントリを稼働させる準備ができたら、「**Ad Units**」ページで「**Go Live!**」を選択します。

## 次のステップ##next-steps

インテグレーションガイドに従って、追加の広告ユニットを実装します。

* [動画リワード](/grow/levelplay/sdk/adobe/rewarded-ads-integration.md)
