> For the complete documentation index, see [llms.txt](https://aatkit.gitbook.io/android-integration/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aatkit.gitbook.io/android-integration/start/setup/maven.md).

# Maven

## Basic integration steps <a href="#integration-steps" id="integration-steps"></a>

### Add the AATKit repository <a href="#integration-steps" id="integration-steps"></a>

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

```gradle
allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
        //... other repositories you use
        maven { //AATKit repository
            url 'https://gravite-sdk-releases.s3.eu-central-1.amazonaws.com/aatkit/android/maven' 
            content { includeGroupByRegex "com\\.intentsoftware\\..*" }
        }

        maven { //GraviteRTB repository
            url 'https://gravite-sdk-releases.s3.eu-central-1.amazonaws.com/rtbsdk/android/maven'
            content { includeGroupByRegex "com\\.rtb\\..*" }
        }
        maven { url "https://s3.amazonaws.com/smaato-sdk-releases/" } //Smaato repository
        maven { url 'https://verve.jfrog.io/artifactory/verve-gradle-release' } //PubNative repository
        maven { //Mintegral repository
            url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"
        }
    }
}
```

### Integrate AATKit with all standard ad networks <a href="#markdown-header-integrate-aatkit-with-all-standard-a-d-networks" id="markdown-header-integrate-aatkit-with-all-standard-a-d-networks"></a>

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

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

See [release notes](https://aatkit.gitbook.io/release-notes/android/release-notes) for the latest stable version.

### Family-safe distribution <a href="#markdown-header-family-safe-distribution" id="markdown-header-family-safe-distribution"></a>

If you plan a Google family safe app please refer to the chapter [Google Family Safe Apps](/android-integration/start/setup/google-family-safe-apps.md) before continuing.

In addition to normal AATKit distribution, we provide special build with a limited [family-safe subset of ad networks](https://support.google.com/googleplay/android-developer/answer/9283445?hl=en).

To use it, instead of normal AATKit dependency use:

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

### Configure Google Ads SDK <a href="#add-an-optional-a-d-network" id="add-an-optional-a-d-network"></a>

Please configure your Google Mobile Ads SDK as described [here](/android-integration/ad-networks/google-mobile-ads-sdk.md).

## Optional <a href="#integration-steps" id="integration-steps"></a>

### Add optional ad networks <a href="#integration-steps" id="integration-steps"></a>

#### AmazonHB <a href="#integration-steps" id="integration-steps"></a>

* 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:

```gradle
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

#### Display.io

Add the needed maven repository to your list:

```gradle
maven {
    url "https://maven.display.io/"
}
```

Followed by the dependency:

```gradle
implementation 'com.brandio.ads:sdk:<DISPLAY.IO_VERSION>'
```

#### Teads

First, add Teads Maven repository to your repositories list:

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

Then add the following dependency:

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

### Remove ad network SDKs <a href="#add-or-remove-a-d-network-sdks" id="add-or-remove-a-d-network-sdks"></a>

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:

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

#### List of "exclude" declarations <a href="#markdown-header-list-of-exclude-declarations" id="markdown-header-list-of-exclude-declarations"></a>

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

| Ad network                | Declaration                                                            |
| ------------------------- | ---------------------------------------------------------------------- |
| AppNexus                  | `exclude group: 'com.appnexus.opensdk', module:'appnexus-sdk'`         |
| AppLovin                  | `exclude group: 'com.applovin', module:'applovin-sdk'`                 |
| Digital Turbine (bidding) | `exclude group: 'com.fyber', module:'marketplace-sdk'`                 |
| GraviteRTB                | `exclude group: 'com.rtb.sdk', module:'RTB-SDK'`                       |
| InMobi                    | `exclude group: 'com.inmobi.monetization', module:'inmobi-ads-kotlin'` |
| Meta (bidding)            | `exclude group: 'com.facebook.android', module:'audience-network-sdk'` |
| Mintegral                 | `exclude group: 'com.mbridge.msdk.oversea'`                            |
| Moloco (bidding)          | `exclude group: 'com.moloco.sdk', module:'moloco-sdk'`                 |
| ironSourceNew             | `exclude group: 'com.unity3d.ads-mediation', module:'mediation-sdk'`   |
| Prebid                    | `exclude group: 'org.prebid', module:'prebid-mobile-sdk'`              |
| PubNative                 | `exclude group: 'net.pubnative', module:'hybid.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'`                     |
