# Adobe AIR プラグインのインテグレーション

> 標準または Gradle インテグレーションメソッドを使用して LevelPlay SDK を Adobe AIR プロジェクトに統合します。Android 4.4 以降と Xcode 15.2 以降の iOS 11 以降がサポートされます。

## 前提条件##prerequisites

* Air SDK [33.1.1.779](https://airsdk.harman.com/api/versions/33.1.1.779/release-notes/Release_Notes_AIR_SDK_33.1.1.779.pdf) 以降では、Adobe AIR プロジェクトを Android Studio プロジェクトにエクスポートできます。iOS バージョンサポートはネットワークごとに定義されます。LevelPlay 広告と LevelPlay メディエーションは、iOS バージョン 11 以降、Xcode バージョン 15.2 以降をサポート。
* Android オペレーティングシステムバージョン 4.4 （API レベル 19） 以降

## ステップ 1. ironsource AIR プラグインをプロジェクトに追加する##step-1.-add-the-ironsource-air-plugin-to-your-project

以前のバージョンの LevelPlay SDK からアップグレードする場合は、プロジェクトから完全に削除する必要があります。そうしないと、更新に問題が生じます。また、テストデバイスから古いビルドを消去して、新しいビルドを作成することをお勧めします。

**LevelPlay には 2 種類のインテグレーションがあります。**

* 標準インテグレーション
* Gradle インテグレーション

### **Gradleインテグレーション**##**gradle-integration**

1. [ANE](https://github.com/ironsource-mobile/AdobeAir-SDK/raw/master/8.1.0/IronSourceGradle_v8.1.0.ane) のダウンロード
2. プロジェクトを Android Studio プロジェクトにエクスポートしたら、Gradle を使用して Android LevelPlay SDK とアダプタをインポートします。[詳細情報](/grow/levelplay/sdk/android/sdk-integration.md)
3. 標準のインテグレーションと同じ ANE を使用して iOS SDK を統合します。

> **Note:**
>
> 標準インテグレーションは、次のリリースで非推奨になります。

### **標準インテグレーション**##**standard-integration**

以下の手順を実行して、Ironsource AIR ANE をプロジェクトに加えます。

1. sdk\_btn platform="air" type="sdk"
2. Flash Builder でプロジェクトを右クリックし、**「プロパティー**」＞「**フレックスビルドパス**」＞「**ネイティブ拡張**」を選択します。
3. "**Add ANE..**." を選択し、**ironsource Air Plugin ANE** ファイルを追加します。
4. プロジェクトを右クリックし、「**プロパティー」**＞「**フレックスビルドパッケージング**」＞「**Android/iOS**」＞「**ネイティブ拡張**」に移動し、**ironsource** **Air Plugin ANE** ファイルが\*\*「パッケージ」\*\*としてマークされていることを確認します。

> **Note:**
>
> プロジェクトで Flash Professional を使用している場合は、以下にアクセスしてください。File (ファイル) > **ActionScript Settings** > **ライブラリ Path** の順に選択し、IronsourceSource の **Air Plugin** **ANE** ファイルを追加します。

### Unity LevelPlay デモアプリケーション##unity-levelplay-demo-app

インテグレーションデモアプリケーションは、アプリケーションに Unity LevelPlay を統合する方法を示しています。sdk\_btn プラットフォーム="air" type="demo"

## ステップ 2. onPause/onResume と SDK インポートの追加##step-2.-add-onpause/onresume-&-sdk-imports

1. Flex アプリケーションのライフサイクル中に、すべてのプロパティを定義するファイルの先頭に onResume と onPause を追加して、アプリケーションのアクティブ化と非アクティブ化をリッスンします。

   ```js
   activate= "onResume()" deactivate="onPause()"
   ```

   以下の 2 つの関数を実装します。

   ```js
   function onResume():void {
     IronSource.instance.onResume(); 
   }
   function onPause():void {
     IronSource.instance.onPause(); 
   }
   ```

アプリケーションがアクティブまたは非アクティブになるたびに onPause/onResume を呼び出し必要があります。
2\. LevelPlay SDK を使用するには、スクリプトに以下のインポートします。

```xml
<extensionID>com.ironsource.adobeair</extensionID>
<extensionID>com.ironsource.adobeair.identifier</extensionID>
<extensionID>com.ironsource.adobeair.apset</extensionID>
<extensionID>com.ironsource.adobeair.androidx</extensionID>
```

サポートされている ANE のリンクは次のとおりです。

* [AndroidX](https://github.com/ironsource-mobile/AdobeAir-adapters/raw/master/AndroidX/1.4.0/AndroidX-v1.4.0.ane)
* [Apset](https://github.com/ironsource-mobile/AdobeAir-adapters/raw/master/apset/16.0.2/Apset_v16.0.2.ane)
* [識別子](https://github.com/ironsource-mobile/AdobeAir-adapters/raw/master/identifier/18.0.1/identifier_v18.0.1.ane)

> **Note:**
>
> 正常にビルドできるように、Apset拡張とAD\_ID権限が含まれていることを確認してください。

## ステップ 3. AndroidManifest.xml 更新##step-3.-update-androidmanifest.xml

Android で LevelPlay SDK を使用するには、 AndroidManifest.xml に関連コードを追加します。

**AndroidManifest.xml** に以下を追加します。

1. \*\*マニフェスト権限:\*\***アプリケーション Descriptor.xml** ファイルに以下の権限を **manifestAdditions** タグ内、ただし `<application>` タグ外に追加します。

```xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
```

2. **マニフェストアクティビティ:**`manifestAdditions`の `<application>` タグ内に以下のアクティビティーを追加します。

```xml
        <activity
                android:name="com.ironsource.sdk.controller.ControllerActivity"
                android:configChanges="orientation|screenSize"
                android:hardwareAccelerated="true" />
        <activity
                android:name="com.ironsource.sdk.controller.InterstitialActivity"
                android:configChanges="orientation|screenSize"
                android:hardwareAccelerated="true"
                android:theme="@android:style/Theme.Translucent" />
        <activity
                android:name="com.ironsource.sdk.controller.OpenUrlActivity"
                android:configChanges="orientation|screenSize"
                android:hardwareAccelerated="true"
                android:theme="@android:style/Theme.Translucent" />
        <activity
                android:name="com.ironsource.mediationsdk.testSuite.TestSuiteActivity"
                android:configChanges="orientation|screenSize"
                android:hardwareAccelerated="true"
                android:theme="@android:style/Theme.NoTitleBar" />
        <プロバイダー
                android:name="com.ironsource.lifecycle.IronsourceLifecycleProvider"
                android:authorities="${applicationId}.IronsourceLifecycleProvider" />
```

3. 使用しているネットワークに応じて、以下の拡張機能を必ず追加してください。

### Android##android

```xml
        <extensions>
        <extensionID>com.ironsource.adobeair</extensionID>
        <extensionID>com.ironsource.adobeair.identifier</extensionID>
        <extensionID>com.ironsource.adobeair.apset</extensionID>
        <extensionID>com.ironsource.adobeair.androidx</extensionID>
<!-- AdMob Adapter Extension-->
        <extensionID>com.ironsource.adobeair.admob</extensionID>
        <extensionID>com.ironsource.adobeair.google</extensionID>
        <extensionID>com.ironsource.adobeair.googlebase</extensionID>
<!-- AppLovin Adapter Extension-->
        <extensionID>com.ironsource.adobeair.applovin</extensionID>
        <extensionID>com.ironsource.adobeair.applovinsdk</extensionID>
<!-- Facebook Adapter Extension-->
        <extensionID>com.ironsource.adobeair.facebook</extensionID>
        <extensionID>com.ironsource.adobeair.fbaudiencenetwork</extensionID>
<!-- DT Exchange Adapter Extension-->
        <extensionID>com.ironsource.adobeair.fyber</extensionID>
        <extensionID>com.ironsource.adobeair.fybersdk</extensionID>
<!-- Mintegral Adapter Extension-->
        <extensionID>com.ironsource.adobeair.mintegraladapter</extensionID>
        <extensionID>com.ironsource.adobeair.mintegralsdk</extensionID>
<!-- Unity Ads Adapter Extension-->
        <extensionID>com.ironsource.adobeair.unityads</extensionID>
        <extensionID>com.ironsource.adobeair.unityadssdk</extensionID>
<!-- Vungle Adapter Extension-->
        <extensionID>com.ironsource.adobeair.vungle</extensionID>
        <extensionID>com.ironsource.adobeair.vunglesdk</extensionID>
        </extensions>
```

### iOS##ios

```xml
        <extensions>
        <extensionID>com.ironsource.adobeair</extensionID>
<!-- AdMob Adapter Extension-->
        <extensionID>com.ironsource.adobeair.admob</extensionID>
        <extensionID>com.ironsource.adobeair.googlemobileads</extensionID>
<!-- AppLovin Adapter Extension-->
        <extensionID>com.ironsource.adobeair.applovin</extensionID>
        <extensionID>com.ironsource.adobeair.applovinsdk</extensionID>
<!-- Facebook Adapter Extension-->
        <extensionID>com.ironsource.adobeair.facebook</extensionID>
        <extensionID>com.ironsource.adobeair.fbaudiencenetwork</extensionID>
<!-- DT Exchange Adapter Extension-->
        <extensionID>com.ironsource.adobeair.fyber</extensionID>
        <extensionID>com.ironsource.adobeair.fybersdk</extensionID>
<!-- Mintegral Adapter Extension-->
        <extensionID>com.ironsource.adobeair.mintegraladapter</extensionID>
        <extensionID>com.ironsource.adobeair.mintegralsdk</extensionID>
<!-- Unity Ads Adapter Extension-->
        <extensionID>com.ironsource.adobeair.unityads</extensionID>
        <extensionID>com.ironsource.adobeair.unityadssdk</extensionID>
<!-- Vungle Adapter Extension-->
        <extensionID>com.ironsource.adobeair.vungle</extensionID>
        <extensionID>com.ironsource.adobeair.vunglesdk</extensionID>
        </extensions>
```

## ステップ 4. iOS 10アプリケーション転送セキュリティ設定の適用(iOSのみ)##step-4.-apply-ios-10-app-transport-security-settings-(ios-only)

> **Important:**
>
> iOS 9以降では、Appleは「ATS」に関するコントロールを追加しました。すべてのメディエーションネットワークでIronsource Ad配信のサポートを中断しないようにするには、**\*-application.xmlファイル**に以下の変更を加えることが重要です。

```xml
<iPhone>
    <InfoAdditions>
       <![CDATA]
          <key>NSAppTransportSecurity</key>
          <dict>
             <key>NSAllowsArbitraryLoads</key>
             <true />
          </dict>
       ]]>
   </InfoAdditions>
</iPhone>
```

## ステップ 5.広告ユニットの初期化##step-5.-initialize-the-ad-units

LevelPlay では、UserID やセグメントなど、SDK を初期化する前に設定する必要のある任意の SDK 設定がサポートされます。設定手順については、[追加のSDK](/grow/levelplay/sdk/adobe/additional-settings.md)設定に関するガイドを参照してください。

> **Note:**
>
> サーバー間のコールバックを使用して、リワード型広告ユニットをユーザーに報酬を与える場合は、[UserID](/grow/levelplay/sdk/adobe/additional-settings.md)を設定する必要があります。

SDK は 2 つの方法で初期化できます。最初のメソッドは定義した特定の広告ユニットを取得するため、推奨されます。

このメソッドは、adUnits パラメーターで指定された特定の広告ユニットを配列として初期化します。

```java
IronSource.instance.init(YOUR_APP_KEY, [IronSource.REWARDED_VIDEO, IronSource.INTERSTITIAL,IronSource.BANNER]);
```

このinitアプローチを使用すると、1つのセッションでアプリケーションフローの異なるタッチポイントで各広告単位を個別に初期化できるようになりました。

```java
//To init Rewarded Video
IronSource.instance.init(YOUR_APP_KEY, [IronSource.REWARDED_VIDEO]);
//To init Interstitial
IronSource.instance.init(YOUR_APP_KEY, [IronSource.INTERSTITIAL]);
//To init Banners
IronSource.instance.init(YOUR_APP_KEY, [IronSource.BANNER]);
```

または、以下のように SDK を初期化すると、LevelPlay プラットフォームで設定した広告ユニットが SDK によって初期化されます。

```text
IronSource.instance.init(YOUR_APP_KEY);
```

### **Init Complete コールバック**##**init-complete-callback**

LevelPlay SDK 7.2.1 以降では、LevelPlay SDK が正常に初期化されたことを通知するコールバックが LevelPlay SDK によって発生します。このリスナーは、初期化プロセスが完了し、広告のロードを開始できることを示します。コールバックはセッションごとに 1 回送信され、SDK の最初の初期化を示します。

```java
IronSource.instance.addEventListener("InitializationComplete", InitializationComplete);
private 機能 InitializationComplete(イベント:イベント):void {
   //InitializationComplete
}
```

LevelPlay SDK は現在**ネットワーク変更状態**をサポートしています。ネットワーク変更状態により、SDK のプラグインはネットワークの変更に応じて可用性を変更できます。例えば、ネットワーク接続がない場合、可用性は false になります。この関数のデフォルトは**false**です。この機能を使用したい場合は、以下の文字列でInitでアクティベートできます。

```java
IronSource.instance.shouldTrackNetworkState(true);
```

## ステップ 6.インテグレーションの確認##step-6.-verify-your-integration

LevelPlay SDKのインテグレーションと、実装済みの追加の広告ネットワークを確認するには、この[記事](/grow/levelplay/sdk/adobe/integration-helper.md)を操作します。

ironsource 広告ユニットとメディエーションツールの使用を開始できます。

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

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

* [動画リワード](/grow/levelplay/sdk/adobe/rewarded-ads-integration.md)
* [Interstitial (インタースティシャル)](/grow/levelplay/sdk/adobe/interstitial-integration.md)
