Maven

Add AATKit to your app using Maven

Basic integration steps

Add the AATKit repository

First of all, you will need to add the AATKit's repository to your repositiories list. Edit your main build.gradle file:

allprojects {
    repositories {
        google()
        jcenter()
        //... other repositories you use
        maven {
            url 'https://android-sdk.aatkit.com/maven/'
        }
        maven { url "https://s3.amazonaws.com/smaato-sdk-releases/" } //Smaato repository
        maven { url 'https://packagecloud.io/smartadserver/android/maven2' } // SmartAdServer repository
        maven { url 'https://verve.jfrog.io/artifactory/verve-gradle-release' } //PubNative repository
        maven { //ironSource repository
            url 'https://android-sdk.is.com/'
        }
        maven { //Ogury repository
            url 'https://maven.ogury.co'
        }
        maven { //GraviteRTB repository
            url 'https://android-sdk-rtb.gravite.net/maven'
        }
        maven { //Mintegral repository
            url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"
        }
    }
}

Integrate AATKit with all standard ad networks

To add AATKit with standard set of ad networks, it is enough to add the following dependency in your app's build.gradle file:

dependencies {
    //... other project dependencies
    implementation ('com.intentsoftware.addapptr:AATKit:<AATKit_VERSION>') {
        transitive = true
    }
}

See release notes for the latest stable version.

Family-safe distribution

If you plan a Google family safe app please refer to the chapter Google Family Safe Apps before continuing.

In addition to normal AATKit distribution, we provide special build with a limited family-safe subset of ad networks.

To use it, instead of normal AATKit dependency use:

dependencies {
    //... other project dependencies
    implementation ('com.intentsoftware.addapptr:AATKit-family-safe:<AATKit_VERSION>') {
        transitive = true
    }
}

Configure Google Ads SDK

Please configure your Google Mobile Ads SDK as described here.

Optional

Add optional ad networks

AmazonHB

  • If you are using AmazonHB, you will now need to place a file with your price points (named AmazonHBPricePoints.csv) in your app's assets folder.

  • Please contact your Account Manager if you are using Amazon SDK.

Add the following dependency:

implementation ("com.amazon.android:aps-sdk:<AMAZON_VERSION>")
implementation ("com.iabtcf:iabtcf-decoder:2.0.10")

The iabtcf dependency is required since Amazon v9.9.2

Huawei Ads

Please note that Huawei ad SDK uses the REQUEST_INSTALL_PACKAGES permission, which may lead to app being rejected from the Google Play store if it is not directly related to your app's core purpose.

Add Huawei Maven repository to your repositories list:

maven { url 'https://developer.huawei.com/repo/' }

Add the following dependency:

implementation 'com.huawei.hms:ads-prime:<HUAWEI_VERSION>'

Teads

First, add Teads Maven repository to your repositories list:

maven {
    url  "https://teads.jfrog.io/artifactory/SDKAndroid-maven-prod"
}

Then add the following dependency:

implementation ("tv.teads.sdk.android:sdk:<TEADS_VERSION>@aar") {
    transitive = true
}

Kidoz

Add the following dependencies:

implementation 'net.kidoz.sdk:kidoz-android-native:<KIDOZ_VERSION>'
implementation 'org.greenrobot:eventbus:3.3.1'

Keep in mind that Kidoz banner behaviour is slightly different than for other ad networks. See here to learn more.

SuperAwesome

First, add SuperAwesome Maven repository to your repositories list:

maven { url "https://aa-sdk.s3-eu-west-1.amazonaws.com/android_repo" }

Then add the following dependency:

implementation 'tv.superawesome.sdk.publisher:superawesome:<SUPERAWESOME_VERSION>'

Remove ad network SDKs

If there is some ad network you do not want to use, it can be simply excluded. For example, assuming you want to exclude AdColony, just change the dependency declaration like:

implementation ('com.intentsoftware.addapptr:AATKit:<AATKit_VERSION>') {
        transitive = true
        exclude group: 'com.intentsoftware.addapptr.subsdk', module:'AdColony'
    }

List of "exclude" declarations

The following table lists the "exclude" declarations needed to remove specific ad networks.

Ad networkdeclaration

AppLovin

exclude group: 'com.applovin', module:'applovin-sdk'

AppLovinMAX

exclude group: 'com.applovin', module:'applovin-sdk'

AppNexus

exclude group: 'com.appnexus.opensdk', module:'appnexus-sdk'

CriteoSDK

exclude group: 'com.criteo.publisher', module:'criteo-publisher-sdk'

Facebook Audience Network

exclude group: 'com.google.ads.mediation', module:'facebook'

FeedAd

exclude group: 'com.feedad.android', module:'feedad-sdk'

GraviteRTB

exclude group: 'com.rtb.sdk', module:'RTB-SDK'

InMobi

exclude group: 'com.inmobi.monetization', module:'inmobi-ads-kotlin'

Mintegral

exclude group: 'com.mbridge.msdk.oversea'

Ogury

exclude group: 'co.ogury', module:'ogury-sdk'

ironSourceNew

exclude group: 'com.ironsource.sdk', module:'mediationsdk'

Prebid

exclude group: 'org.prebid', module:'prebid-mobile-sdk'

PubNative

exclude group: 'net.pubnative', module:'hybid.sdk'

Smaato

exclude group: 'com.smaato.android.sdk'

SmartAdServer

exclude group: 'com.smartadserver.android', module:'smart-display-sdk'

Tappx

exclude group: 'com.tappx.sdk.android', module:'tappx-sdk'

UnityAds

exclude group: 'com.unity3d.ads', module:'unity-ads'

Vungle

exclude group: 'com.vungle', module:'vungle-ads'

YOC

exclude group: 'com.yoc.visx.sdk', module:'visx-sdk'

Last updated