Updating Your Adobe Air Plugin

To update your Adobe Air Plugin from 6.4 and below to the latest Plugin version, follow these 4 easy steps:

  1. Download the ironSource Adobe Air ANE
  2. Update Additional Settings for Android
  3. Update SDK Methods
  4. Update Events

Step 1. Download the IronSource Adobe Air ANE

First you will need to remove your integrated Adobe Air ANE from your Native Extensions.

Then add the the latest version of the Adobe Air ANE:

  1. Download the Adobe Air ANE here.
  2. In Flash Builder, right click your project and go to PropertiesFlex Build PathNative 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”.

Step 2. Update Additional Settings for Android

  1. Update your Manifest Activities on your AndroidManifest.xml
    Replace the Supersonic Manifest Activities
    <activity
       android:name="com.supersonicads.sdk.controller.ControllerActivity"
       android:configChanges="orientation|screenSize"
       android:hardwareAccelerated="true" />
    <activity
       android:name="com.supersonicads.sdk.controller.InterstitialActivity"
       android:configChanges="orientation|screenSize"
       android:hardwareAccelerated="true"
       android:theme="@android:style/Theme.Translucent" />
    <activity
       android:name="com.supersonicads.sdk.controller.OpenUrlActivity"
       android:configChanges="orientation|screenSize"
       android:hardwareAccelerated="true"
       android:theme="@android:style/Theme.Translucent" />

    With the ironSource Manifest Activities:

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

Step 3. Update SDK Methods

We’ve standardized and updated all of our methods according to tech conventions, and replaced all Supersonic mentions with ironSource. In addition, you can now initialize your preferred ad units with a single init, preferably on application launch.

You’ll need to review, remove and replace existing methods with the following:

General Methods (relevant for All Ad Units):

  • New! setUserId
    The UserID is a unique identifier for each user. You can set the userID parameter, or let us generate one for you. If you’re serving the Offerwall ad unit or server-to-server callbacks to reward your users with our rewarded ad units, you must set the UserID. Common practice is to use the GAID (Google Advertiser ID).
    Note: Note: You must set the UserID parameter before the init request.
    IronSource.instance.setUserId(YOUR_USER_ID);

Ad Unit Initialization

Remove the init function from each ad unit:

  • Rewarded Video
    Supersonic.instance.initRewardedVideo("YOUR_APPLICATION_KEY", "USER_UNIQUE_ID");
  • Offerwall
  • Supersonic.instance.initOfferwall("YOUR_APPLICATION_KEY", "USER_UNIQUE_ID");
  • Interstitial
    Supersonic.instance.initInterstitial("YOUR_APPLICATION_KEY", "USER_UNIQUE_ID");

Replace the init function with the following:

New!  The new SDK 6.6 initializes all the relevant ad units based on the configurations you set up in the platform, instead of you initializing each ad unit separately.

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

Init the specific ad units mentioned in the adUnits parameter, preferably on app launch:

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

Init the ad units you’ve configured on the ironSource platform SDK sync:

IronSource.instance.init(YOUR_APP_KEY);

Ad Unit Methods

  • Rewarded Video
    Remove the Supersonic functions:
    Supersonic.instance.isRewardedVideoAvailable();
    Supersonic.instance.showRewardedVideo();
    Supersonic.instance.showRewardedVideo(YOUR_PLACEMENT_NAME);
    Supersonic.instance.getRewardedVideoPlacementInfo(YOUR_PLACEMENT_NAME);

    Replace them with the new IronSource functions:

    IronSource.instance.isRewardedVideoAvailable()
    IronSource.instance.showRewardedVideo();
    IronSource.instance.showRewardedVideo(YOUR_PLACEMENT_NAME);
    IronSource.instance.getRewardedVideoPlacementInfo(YOUR_PLACEMENT_NAME);
  • Offerwall
    Remove the Supersonic functions:
    Supersonic.instance.showOfferwall();
    Supersonic.instance.getOfferwallCredits();
    

    Replace them with the new IronSource functions:

    IronSource.instance.showOfferwall();
    IronSource.instance.getOfferwallCredits();
    
  • Interstitial
    Remove the Supersonic functions:
    Supersonic.instance.loadInterstitial();
    Supersonic.instance.showInterstitial();
    Supersonic.instance.showInterstitial(YOUR_PLACEMENT_NAME);

    Replace them with the new IronSource functions:

    IronSource.instance.loadInterstitial();
    IronSource.instance.showInterstitial();
    IronSource.instance.showInterstitial(YOUR_PLACEMENT_NAME);
    

Step 4. Update the Events

The ironSource Adobe Air Plugin fires several events to inform you of the ad unit activity. Replace the existing events with the following:

  • Rewarded Video
    IronSource.instance.addEventListener(“onRewardedVideoAdOpened”, onRewardedVideoAdOpened);
    IronSource.instance.addEventListener(“onRewardedVideoAdClosed”, onRewardedVideoAdClosed);               IronSource.instance.addEventListener(“onRewardedVideoAvailabilityChanged”, onRewardedVideoAvailabilityChanged);                IronSource.instance.addEventListener(“onRewardedVideoAdStarted”, onRewardedVideoAdStarted);               IronSource.instance.addEventListener(“onRewardedVideoAdEnded”, onRewardedVideoAdEnded);               IronSource.instance.addEventListener(“onRewardedVideoAdRewarded”, onRewardedVideoAdRewarded);                IronSource.instance.addEventListener(“onRewardedVideoAdShowFailed”, onRewardedVideoAdShowFailed);
  • Offerwall
    IronSource.instance.addEventListener(“onOfferwallAvailable”, onOfferwallAvailable);
    IronSource.instance.addEventListener(“onOfferwallOpened”, onOfferwallOpened);
    IronSource.instance.addEventListener(“onOfferwallShowFailed”, onOfferwallShowFailed);
    IronSource.instance.addEventListener(“onOfferwallAdCredited”, onOfferwallAdCredited);                IronSource.instance.addEventListener(“onGetOfferwallCreditsFailed”, onGetOfferwallCreditsFailed);
    IronSource.instance.addEventListener(“onOfferwallClosed”, onOfferwallClosed);
  • Interstitial
    IronSource.instance.addEventListener(“onInterstitialAdReady”, onInterstitialAdReady);
    IronSource.instance.addEventListener(“onInterstitialAdLoadFailed”, onInterstitialAdLoadFailed);
    IronSource.instance.addEventListener(“onInterstitialAdOpened”, onInterstitialAdOpened);
    IronSource.instance.addEventListener(“onInterstitialAdClosed”, onInterstitialAdClosed);              IronSource.instance.addEventListener(“onInterstitialAdShowSucceeded”, onInterstitialAdShowSucceeded);                IronSource.instance.addEventListener(“onInterstitialAdShowFailed”, onInterstitialAdShowFailed);
    IronSource.instance.addEventListener(“onInterstitialAdClicked”, onInterstitialAdClicked);

Done!
You are now ready to start working with ironSource’s Ad Units and Mediation Tools.


What’s Next?

Once you’ve verified your integration with the Integration Helper, follow our integration guides and implement our Ad Units:

Interested in Mediation? Integrate our Rewarded Video or Interstitial Ads in your app and follow our Mediation articles.