Skip to content

Integration

This page shows you how to download, configure, and initialize the AppLovin MAX AIR Extension.

Download the Latest Adobe AIR Extension

Download the plugin manually by using the button below.

To receive release updates, subscribe to the AppLovin MAX Adobe AIR Extension GitHub repository.

Import the Extension

Add the AppLovinMAX-version.ane file to your project’s libraries folder (generally lib/).

Add the com.applovin.air extensionID to your application descriptor XML file within the extensions element. (This file is typically named app-name-app.xml.) The code below shows how to add this extensionID:

<extensions>
<extensionID>com.applovin.air</extensionID>
</extensions>

Android Manifest

This section explains how to adjust your Android Manifest. You add appropriate permissions, activities, providers, and services in your application descriptor XML file. This is necessary so that you can properly initialize AppLovin MAX SDK. After you initialize AppLovin MAX, you can show ads.

Permissions

Add certain uses-permission elements to your application descriptor XML file inside the manifestAdditions element. The elements and their attributes are shown in this example:

<manifestAdditions>
<![CDATA[
<manifest android:installLocation="auto">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application>
</application>
</manifest>
]]>
</manifestAdditions>

Activities, Providers, and Services

Add the following providers, activities, and services inside the <application> element. You find this element on your Android Manifest of your application descriptor XML file:

<manifestAdditions>
<![CDATA[
<manifest android:installLocation="auto">
<application>
<provider
android:name="com.applovin.sdk.AppLovinInitProvider"
android:authorities="«your-application-package-name».applovininitprovider"
android:exported="false"
android:initOrder="101" />
<activity
android:name="com.applovin.adview.AppLovinInterstitialActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|uiMode"
android:hardwareAccelerated="true"
android:screenOrientation="behind" />
<activity
android:name="com.applovin.adview.AppLovinFullscreenActivity"
android:configChanges="keyboard|keyboardHidden|locale|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
android:exported="false"
android:hardwareAccelerated="true"
android:launchMode="singleTop"
android:screenOrientation="behind" />
<activity
android:name="com.applovin.sdk.AppLovinWebViewActivity"
android:configChanges="keyboardHidden|orientation|screenSize|uiMode" />
<activity
android:name="com.applovin.mediation.MaxDebuggerActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerDetailActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerMultiAdActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerAdUnitsListActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerAdUnitDetailActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerTestLiveNetworkActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<service
android:name="com.applovin.impl.sdk.utils.AppKilledService"
android:exported="false"
android:stopWithTask="false" />
<service
android:name="com.applovin.impl.adview.activity.FullscreenAdService"
android:exported="false"
android:stopWithTask="false" />
</application>
</manifest>
]]>
</manifestAdditions>

Initialize the SDK

Attach the SdkInitializedEvent event handler. Then initialize the SDK as soon as your app launches. The the code sample below demonstrates this sequence.

Ad assets that are fully cached result in a better user experience. For this reason, always initialize the AppLovin SDK on startup. This gives mediated networks the maximum amount of time to cache ads. This is especially important with video ads.

AppLovinMAXEvents.setSdkInitializedEvent(function (sdkConfiguration:SdkConfiguration):void
{
// Start loading ads
});
AppLovinMAX.initialize("«your-SDK-key»");

You can find your SDK key in the Account > General > Keys section of the AppLovin dashboard.

iOS 14 Support

Apple introduced global privacy changes in iOS 14. You must comply with these changes to avoid a material drop in revenue. This section explains how to comply.

SKAdNetwork

Update your app’s Info.plist with network-specific identifiers. You will find this in your application descriptor XML file inside the InfoAdditions tag. See the SKAdNetwork documentation for instructions.

You must obtain consent from your users (in applicable jurisdictions) on behalf of AppLovin’s monetization partners. Then you must correctly pass consent flag values to AppLovin. To learn how to do this, review the Privacy–Consent and Data APIs documentation.

iOS 15 Global SKAdNetwork Reporting

Starting with iOS 15, Apple allows developers to send a copy of their SKAdNetwork install postbacks to an endpoint of their choice. MAX includes a Global SKAdNetwork Report (MAX > Mediation > Analyze > Global SKA Report). You can use this to access the SKAdNetwork data across all of your network partners in one place.

The final result should look something like this:

<iPhone>
<InfoAdditions>
<![CDATA[
<key>NSAdvertisingAttributionReportEndpoint</key>
<string>https://postbacks-app.com</string>
]]>
</InfoAdditions>
</iPhone>