PremiumAds AppLovin MAX Adapter — React Native
Integrate PremiumAds as a mediation ad source in your React Native app using react-native-applovin-max.
Supported formats: Banner, MREC, Interstitial, Rewarded, Native
App Open is not supported by the PremiumAds MAX adapter.
Prerequisites
- A bare React Native app, or a custom dev client (this package ships native code and does not work in Expo Go)
react-native-applovin-maxalready integrated
1. Install the Packages
npm install @premiumads/react-native-max-adapter
# or
yarn add @premiumads/react-native-max-adapter
This package only wires up the native PremiumAds adapter. You also need AppLovin's own React Native MAX SDK, which we recommend installing alongside it:
npm install react-native-applovin-max
npm: https://www.npmjs.com/package/@premiumads/react-native-max-adapter
2. Native Dependencies (Automatic)
Nothing extra to configure — the wrapper package pulls in the native binaries via React Native autolinking:
- Android:
net.premiumads.sdk:max-adapterfrom the PremiumAds JFrog Maven repository (https://repo.premiumads.net/artifactory/mobile-ads-sdk/), injected by the wrapper'sbuild.gradle. - iOS:
PremiumAdsMaxAdapter, published on CocoaPods trunk, pulled in transitively by the wrapper podspec.
Finish the native setup:
# iOS — install pods
cd ios && pod install && cd ..
# Android — no extra step, just rebuild
3. Configure the MAX Custom Network
In the AppLovin MAX dashboard, add PremiumAds as a Custom Network:
| Field | Value |
|---|---|
| Network name | PremiumAds Custom Adapter |
| iOS adapter class | PremiumAdsAdapter |
| Android adapter class | net.premiumads.sdk.adapter.max.PremiumAdsAdapter |
| Placement / Ad Unit ID | Your PremiumAds ad unit ID |
4. Load Ads
import {AppLovinMAX} from 'react-native-applovin-max';
import {setDebug} from '@premiumads/react-native-max-adapter';
// Enable verbose logging from the PremiumAds adapter (dev only)
setDebug(__DEV__);
AppLovinMAX.initialize('YOUR_SDK_KEY').then(configuration => {
console.log('MAX initialized:', configuration);
});
Once initialized, use the standard react-native-applovin-max APIs (AppLovinMAX.Banner, AppLovinMAX.Interstitial, AppLovinMAX.Rewarded, AppLovinMAX.Native, etc.). The PremiumAds adapter receives ad requests via MAX mediation when your ad units are configured to mediate through PremiumAds in the MAX dashboard.
5. Debug Logging (Optional)
import {setDebug} from '@premiumads/react-native-max-adapter';
setDebug(true);
Filter logs:
- Android Logcat:
adb logcat -s PremiumAdsAdapter:V - iOS Xcode console / Simulator stdout:
[PremiumAdsAdapter]
6. Build & Run
Android
npx react-native run-android
iOS
cd ios && pod install && cd ..
npx react-native run-ios
Versioning
This JS package is versioned independently from the native adapters. It pins:
- Android:
net.premiumads.sdk:max-adapter:1.0.0 - iOS:
PremiumAdsMaxAdapter(via CocoaPods trunk)
Source Code
- npm: https://www.npmjs.com/package/@premiumads/react-native-max-adapter
- Repository: https://github.com/premium-ads/max-adapter-react-native
Troubleshooting
"The package '@premiumads/react-native-max-adapter' doesn't seem to be linked":
- Rebuild the app after installing the package (
npx pod-installon iOS, a fresh Gradle build on Android). Metro fast refresh alone will not pick up new native modules. - Confirm you are not running inside Expo Go — this package requires a custom dev client or a bare React Native build, since it ships native code.
- On iOS, make sure
pod installcompleted without errors and that the adapter shows up in yourPodfile.lock. - On Android, make sure autolinking picked up the module — check
android/app/build/generated/autolinking/autolinking.jsonfor@premiumads/react-native-max-adapter.
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.
Ads never load / NO FILL (HTTP 204):
A NO FILL response means the waterfall has no eligible line item for the requesting app/device — check that your ad unit has active demand and that the app's bundle/package ID matches the app configured in the MAX dashboard.
Documentation
Support
Contact your PremiumAds account manager or email [email protected]