Skip to main content

AdTrue AppLovin MAX Adapter — Android

Integrate AdTrue as a mediation ad source in your Android app through AppLovin MAX.

Supported formats: Banner, MREC, Interstitial, Rewarded, Native

App Open is not supported. AppLovin MAX does not support the App Open ad format for custom network adapters.

Prerequisites

  • The AppLovin MAX SDK already integrated in your app (AppLovin SDK 13.x)
  • Android minSdk 24 or higher
  • The Google Mobile Ads SDK (com.google.android.gms:play-services-ads) — the adapter declares it as a dependency, so Gradle pulls it in automatically

1. Add the Dependency

settings.gradle(.kts) (repositories):

dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven("https://repo.adtrue.com/maven")
}
}

app/build.gradle(.kts):

dependencies {
implementation("com.adtrue.sdk:max-adapter:1.0.1")
implementation("com.applovin:applovin-sdk:13.6.4")
implementation("com.google.android.gms:play-services-ads:25.4.0")
}

The adapter is published on the AdTrue Maven repository at https://repo.adtrue.com/maven (no authentication required).

2. Configure the MAX Custom Network

In the AppLovin MAX dashboard, add AdTrue as a Custom Network, then configure a Custom Adapter for each ad unit:

FieldValue
Network NameAdTrue Custom Adapter
Android Class Namecom.adtrue.sdk.adapter.max.AdTrueAdapter
iOS Class NameAdTrueAdapter
Placement / ParameterYour AdTrue ad unit ID

The same class name works for all supported ad formats. The adapter auto-detects the format from the MAX mediation request.

3. Load Ads

The adapter is invoked automatically by the AppLovin MAX SDK — no extra code needed. Use the standard MAX Android APIs to load Banner, MREC, Interstitial, Rewarded, and Native ads. See the AppLovin MAX Android integration guide for the ad-loading APIs.

4. Debug Logging (Optional)

Enable verbose debug logging from the AdTrue adapter:

import com.adtrue.sdk.adapter.max.AdTrueAdapter

AdTrueAdapter.setDebug(true)

Filter logs in Logcat:

adb logcat -s AdTrueAdapter:V

Example output:

AdTrueAdapter: Debug mode enabled | AdTrue MAX Adapter v1.0.1
AdTrueAdapter: [Banner] Loading ad with unit: 1234567
AdTrueAdapter: [Banner] Ad loaded successfully
AdTrueAdapter: [Banner] Impression recorded
AdTrueAdapter: [Banner] Click recorded

5. GDPR / TCF v2.0

The adapter automatically reads IAB TCF v2.0 consent from SharedPreferences. If you integrate AppLovin's CMP (or any TCF-compliant CMP), no additional adapter code is required.

ProGuard / R8

The adapter ships its own consumer ProGuard rules inside the AAR — no manual configuration needed.

Source & Releases

  • Maven coordinates: com.adtrue.sdk:max-adapter:1.0.1
  • Maven repository: https://repo.adtrue.com/maven
  • Adapter class: com.adtrue.sdk.adapter.max.AdTrueAdapter

Troubleshooting

New ad units / waterfall changes don't take effect immediately: Changes to ad units or waterfall configuration in the MAX dashboard take 30–60 minutes to propagate. Wait before retesting.

Ads never load / NO FILL (HTTP 204): A NO FILL response (204) means the waterfall has no eligible line item for the requesting app/device at that moment — this is expected behavior, not an error. Check that:

  • Your AdTrue ad unit has active, funded demand for the test device/geo.
  • Test ads are enabled if you're testing on a non-approved device — see Test Ads.

Adapter never receives requests: Verify the app's package ID matches exactly the app configured in the MAX dashboard. A mismatched application ID silently prevents the waterfall from routing traffic to your ad units.

Adapter class not found in MAX log: Confirm the Android class name in the MAX Custom Network config is exactly com.adtrue.sdk.adapter.max.AdTrueAdapter.

Gradle cannot resolve com.adtrue.sdk:max-adapter: Make sure maven("https://repo.adtrue.com/maven") is declared in dependencyResolutionManagement.repositories (or allprojects.repositories), not only under pluginManagement.

Documentation

Support

Contact your AdTrue account manager or email [email protected]