Adobe Air Plugin integration

Integrate the ironSource SDK into your Adobe AIR project using either the standard or Gradle integration method, supporting Android 4.4+ and iOS 11+ with Xcode 15.2+.

Read time 10 minutes

Prerequisites

  • Starting from Air SDK 33.1.1.779, you can export your AdobeAir project into an Android Studio project. iOS version support is defined per network. ironSource ads and LevelPlay mediation supports iOS versions 11+, XCode version 15.2+.
  • Android operating systems version 4.4 (API level 19)+.ֿ

Step 1. Add the ironSource AIR Plugin to your Project

If you are upgrading from a previous version of the ironSource SDK, you must completely remove it from your project, otherwise it will cause issues with the update. We also recommend erasing older builds from test devices and making a new build.

LevelPlay provides two types of Integration:

  • Standard Integration
  • Gradle Integration

Gradle Integration

  1. Download the ANE
  2. After you export your project to Android studio project, import the Android ironSource SDK and adapters by using the gradle. Learn more.
  3. Use the same ANE to integrate the iOS SDK as in the standard integration.

Standard Integration

Complete the following steps to include the ironSource AIR ANE in your project:

  1. [sdk_btn platform="air" type="sdk"]
  2. In Flash Builder, right click your project and go to Properties > Flex Build Path > Native Extensions.
  3. Click "Add ANE..." and add the ironSource Air Plugin ANE file.
  4. Right click on your project and go to Properties > Flex Build Packaging > Android/iOS > Native Extensions and make sure that the ironSource Air Plugin ANE file is marked as "Package".

Unity LevelPlay Demo App

The Integration Demo application demonstrates how to integrate Unity LevelPlay in your app. [sdk_btn platform="air" type="demo"]

Step 2. Add onPause/onResume & SDK Imports

  1. During the Flex Application Lifecycle, listen for application activation and deactivation by adding onResume and onPause on the top of the file where you define all of the properties:

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

    Implement the two functions as follows:

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

You should call onPause/onResume each time the app is activated or deactivated. 2. Import the following in your scripts to use the ironSource SDK:

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

You can find below links for the supported ANEs:

Step 3. Update AndroidManifest.xml

To use the ironSource SDK on Android, add relevant code to the AndroidManifest.xml:

Add the following to your AndroidManifest.xml:

  1. Manifest Permissions: Add the following permissions to your Application Descriptor.xml file inside the manifestAdditions tag but outside the <application> tag:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  1. Manifest Activities: Add the following activities inside the <application> tag on your manifestAdditions:
        <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" />
        <provider
                android:name="com.ironsource.lifecycle.IronsourceLifecycleProvider"
                android:authorities="${applicationId}.IronsourceLifecycleProvider" />
  1. Make sure to add the following extensions according to the networks you are using:

Android

        <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

        <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>

Step 4. Apply iOS 10 App Transport Security Settings (iOS Only)

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

Step 5. Initialize the Ad Units

ironSource supports optional SDK settings such as UserID and Segments that must be configured before you initialize the SDK. See our guide on Additional SDK Settings for setup instructions.

You can initialize the SDK in two ways. We recommend the first method as it will fetch the specific ad units you define.

This method will init the specific ad units mentioned in the adUnits parameter as an Array:

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

When using this init approach, you can now initialize each ad unit separately at different touchpoints in your app flow in one session.

//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]);

Alternatively, you can init the SDK as detailed below and the SDK will init the ad units you've configured on the ironSource platform:

IronSource.instance.init(YOUR_APP_KEY);

Init Complete Callback

The ironSource SDK fires callback to inform you that the ironSource SDK was initialized successfully, for ironSource SDK 7.2.1+ . This listener will provide you an indication that the initialization process was completed, and you can start loading ads. The callback will be sent once per session, and will indicate the first initialization of the SDK.

IronSource.instance.addEventListener("InitializationComplete", InitializationComplete);
private function InitializationComplete(event:Event):void {
   //InitializationComplete
}

ironSource SDK currently supports Network Change Status, which enables the SDK's plugin to change the availability according to network modifications. For example, in the case of no network connection, the availability will turn to FALSE. The default of this function is False; in the case you'd like to utilize it, you can activate it in the Init with the following string:

IronSource.instance.shouldTrackNetworkState(true);

Step 6. Verify Your Integration

To verify your ironSource SDK integration as well as any additional Ad Networks you may have implemented, navigate to this article.

You can now start working with the ironSource Ad Units and Mediation Tools.

Next steps

After you've verified your integration, follow our integration guides and implement our Ad Units: