Getting Started With Appnext

Welcome to the Appnext developer hub. You'll find comprehensive guides and documentation to help you start working with Appnext as quickly as possible, as well as support if you get stuck. Let's jump right in!

Start Now!

Adobe Air Plugin

Appnext - Adobe Air Plugin Installation

Download the Adobe Air plugin

Latest version: 3.2.0 (released on May 9th, 2018)
You can download the Adobe Air plugin from [here]https://cdn.appnext.com/tools/zip/plugins/AppnextAdobeAirPlugin_3.2.0.zip)

Android Integration

Notes:

  • it is highly recommended to integrate the latest version of Google Play Services, in your app. Instructions can be found here
  • The Android Native Ads is supported Android API 15 and above, other ad units are supported Android API 14 and above

Step 1: Add the SDK to Your Project

Download the plugin and extract the ANE file from the ZIP file.

For Flash Builder:
Right-click on your project > Properties. ActionScript Build Path" > Native Extensions tab > add ANE. Find the appnextAdsExtension.ane file and click OK.

For Intellij IDEA:
File -> Project Structure -> Modules. Select your app module -> Dependencies -> Add Dependency -> New Library. Find the appnextAdsExtension.ane file and click OK.

Step 2: Edit the <project-name>-app.xml File

Open the <project-name>-app.xml, scroll down to the android entry and insert the following code right before the Android entry.

<extension>
<extensionID>com.appnext.ads<extensionID>
</extension>

Inside android entry find manifestAdditions entry and insert the following code to it:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>	
<application android:enabled="true">
    <service android:name="com.appnext.core.AdsService" />
    <activity android:name="com.appnext.ads.interstitial.InterstitialActivity"
                 android:hardwareAccelerated="true"

                 android:configChanges="keyboardHidden|orientation|screenSize"
                 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
    <activity android:name="com.appnext.ads.fullscreen.FullscreenActivity"
                 android:hardwareAccelerated="true"
                 android:configChanges="keyboardHidden|orientation|screenSize"
                 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
</application>

The Appnext SDK uses the permissions granted to your app in order to improve campaigns targeting, and in order to suggest the most relevant apps to your users. We highly recommend that your app request the following permissions so we can better suggest apps to your users, and serve premium campaign types in your app:

<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.REAL_GET_TASKS"/>
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

An example of the changes to your xml:

<extension>
<extensionID>com.appnext.ads<extensionID>
</extension>
<android>
<manifestAdditions>
<![CDATA[
            <manifest android:installLocation="auto">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.REAL_GET_TASKS"/>
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

<application android:enabled="true">
<service android:name="com.appnext.core.AdsService" />
<activity android:name="com.appnext.ads.interstitial.InterstitialActivity"
                                  android:hardwareAccelerated="true"
                                  android:configChanges="keyboardHidden|orientation|screenSize"
                                  android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity android:name="com.appnext.ads.fullscreen.FullscreenActivity"
                                  android:hardwareAccelerated="true"
                                  android:configChanges="keyboardHidden|orientation|screenSize"
                                  android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
</application>
</manifest>
            ]]>
</manifestAdditions>
</android>

Important Note!

It is against our policies to encourage or reward the user for installing the app; we only allow rewards as a means of encouraging users to watch the video ad, so they will voluntarily install the app if they are interested.

iOS Integration

Integrating Appnext Interstitial into Your App/Game

Notes:

  • The Adobe Air plugin support iOS version 6.0 and above

Step 1: Add the Adobe Air plugin to Your Project

Download the plugin and extract the ANE file from the ZIP file.

For Flash Builder:
Right-click on your project > “Properties”. “ActionScript Build Path" > "Native Extensions" tab > add ANE. Find the appnextAdsExtension.ane file and click OK.

For Intellij IDEA:
“File” -> “Project Structure” -> “Modules”. Select your app module -> “Dependencies” -> “Add Dependency” -> “New Library”. Find the appnextAdsExtension.ane file and click OK.

Step 2: Edit the <project-name>-app.xml File

Open the <project-name>-app.xml, scroll down to the android entry and insert the following code right before android entry.

<extension>
<extensionID>com.appnext.ads<extensionID>
</extension>

Inside the iPhone entry find infoAdditions entry and insert the following code to it:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key><true/>
 </dict>

An example of the changes to your xml (iOS + Android):

<extension>
<extensionID>com.appnext.ads<extensionID>
</extension>
<android>
        <manifestAdditions>
            <![CDATA[
            <manifest android:installLocation="auto">
                <uses-permission android:name="android.permission.INTERNET"/>
                <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
                 <application android:enabled="true">
                    <service android:name="com.appnext.core.AdsService" />
                    <activity android:name="com.appnext.ads.interstitial.InterstitialActivity"
                                     android:hardwareAccelerated="true"
                                     android:configChanges="keyboardHidden|orientation|screenSize"
                                     android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
                    <activity android:name="com.appnext.ads.fullscreen.FullscreenActivity"
                                     android:hardwareAccelerated="true"
                                     android:configChanges="keyboardHidden|orientation|screenSize"
                                     android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
                </application>
            </manifest>
            ]]>
            </manifestAdditions>
</android>
<iPhone>
        <InfoAdditions>
            <![CDATA[
            <key>UIDeviceFamily</key>
            <array>
                <!-- iPhone and iPod touch devices -->
                <string>1</string>
                <!-- iPad devices -->
                <string>2</string>
            </array>
            <key>NSAppTransportSecurity</key>
            <dict>
                <key>NSAllowsArbitraryLoads</key><true/>
            </dict>
            ]]>
        </InfoAdditions>
        <requestedDisplayResolution>high</requestedDisplayResolution>
</iPhone>

What's Next

Integrate one of the following plugin's ad units

Interstitial
Rewarded and Fullscreen

Adobe Air Plugin

Appnext - Adobe Air Plugin Installation