Getting Started with the ironSource Android SDK

Before You Start
We support Android Operating Systems Version 3.0 (API level 11) and up.

Step 1. Add the ironSource SDK to Your Project

ironSource supports both Gradle dependencies and manual download mechanisms to integrate our SDK:


  1. Add the following to your app’s build.gradle file inside repositories section:
    repositories {
        maven {
            url ""
  2. Then add the following to the dependencies section:
dependencies {
    implementation 'com.ironsource.sdk:mediationsdk:' 

Manual Download

  1. Download Android SDK Version
  2. unzip it and drop the mediationsdk_xxx.jar into the libs folder in your project:
  3. Make sure you add the following to your build.gradle file under the dependencies section:
    implementation files('libs/mediationsdk-')

ironSource Mediation Demo App

Download Android Demo Application

Step 2. Update AndroidManifest.xml

To update your AndroidManifest.xml, please complete the following steps:

  1. Manifest Permissions

    Add the following permissions to your AndroidManifest.xml file inside the manifest tag but outside the <application> tag:

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

     Manifest Activities

    Add the following activities inside the <application> tag in your AndroidManifest:

                android:hardwareAccelerated="true" />
                android:theme="@android:style/Theme.Translucent" />
                android:theme="@android:style/Theme.Translucent" />
  2. Google Play Services

    1. Download the android-support-v4Add the jar to your project under App/Libs.
    2. Google Play Services in Your Android Manifest
      Add the following  inside the <application> tag in your AndroidManifest:

      <meta-data android:name=""
      android:value="@integer/google_play_services_version" />
    3. Google Advertising ID
      The ironSource SDK requires access to the Google Advertising ID in order to operate properly. See this guide on how to integrate Google Play Services.
      Make sure you are using the latest Google Play Services version. Prior versions might not work on devices using Lollipop (API 21).
Amazon devices do not utilize Google Play Services. If you are building for the Amazon platform, skip the above step.

Step 3. Override Your Activity Lifecycle Methods

Application Lifecycle
Override the onPause(), onResume() methods in each of your activities to call the corresponding ironSource methods as follows:

protected void onResume() {
   protected void onPause() {

Step 4. Set the Listeners

The ironSource SDK fires several events to inform you of your ad unit activity. To receive these events, register to the listener of the ad units you set up on the ironSource platform.

  • For Rewarded Video

  • For Interstitial

  • For Offerwall


Step 5. Initialize the SDK

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.
Note: If you’re serving the Offerwall ad unit or using server-to-server callbacks to reward your users with our rewarded ad units, you must set the UserID.

Init the SDK

The SDK can be initialized in two ways:

  1. We recommend this approach as it will fetch the specific ad units you define in the adUnits parameter. Ad unit is a string array.

    *Ad Units should be in the type of IronSource.Ad_Unit.AdUnitName, example 
    IronSource.init(this, appKey, IronSource.AD_UNIT.OFFERWALL, IronSource.AD_UNIT.INTERSTITIAL, IronSource.AD_UNIT.REWARDED_VIDEO, IronSource.AD_UNIT.BANNER);

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

    //Rewarded Video
    IronSource.init(this, appKey, IronSource.AD_UNIT.REWARDED_VIDEO);
    //Init Interstitial 
    IronSource.init(this, appKey, IronSource.AD_UNIT.INTERSTITIAL); 
    //Init Offerwall
    IronSource.init(this, appKey, IronSource.AD_UNIT.OFFERWALL) 
    //Init Banner
    IronSource.init(this, appKey,IronSource.AD_UNIT.BANNER);
  2. 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.init(this, appKey);

For ProGuard Users Only

If you are using ProGuard with the ironSource SDK, you must add the following code to your ProGuard file (Android Studio: or Eclipse: proguard-project.txt):

-keepclassmembers class com.ironsource.sdk.controller.IronSourceWebView$JSInterface {
    public *;
-keepclassmembers class * implements android.os.Parcelable {
    public static final android.os.Parcelable$Creator *;
-keep public class** {
   public *;
-keep class com.ironsource.adapters.** { *;
-dontwarn com.moat.**
-keep class com.moat.** { public protected private *; }

Step 6. Verify Your Integration

The ironSource SDK provides an easy way to verify that your Rewarded Video Mediation integration was completed successfully. To verify your ironSource SDK integration as well as any additional Ad Networks you have implemented, simply add this method to your project:


For more details on the ironSource Integration Verification tool navigate to this article.


Done! You just integrated the ironSource SDK in your app. 
You are now ready to start working with ironSource’s Ad Units and Mediation Tools.

What’s Next?

  1. Follow our integration guides and implement our Ad Units:
    Rewarded Video
    Banner Mediation
  2. Interested in Mediation? Integrate our Rewarded Video, Interstitial or Banner Ads in your app and follow our Mediation articles.
  3. Verify your integration with the Integration Helper.
You can read this article in: