Google Ad Manager
Google Ad Manager flutter guide for Custom Adapter (GMA SDK).
Prerequisites
Performed by: Developer
- See the Compatibility Matrix for the minimum Android and iOS versions for this package.
Install the SDK
Performed by: Developer
Ensure your android/build.gradle (project-level) includes the required repositories:
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Note: On Gradle 7+, use Gradle Setup (Gradle 7+) instead - declare repositories in settings.gradle under dependencyResolutionManagement and remove the allprojects block. Use one approach, not both.
Android
Open the pubspec.yaml file.
Find the dependencies block and add:
dependencies:
tapmind_ads_admob_flutter: ^3.0.1
google_mobile_ads: ^5.0.0
iOS
Update Pod file as per below:
target 'Runner' do
use_frameworks! :linkage => :static # Add this line for tapmind adapter
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
target 'RunnerTests' do
inherit! :search_paths
end
end
Open the pubspec.yaml file.
Find the dependencies block and add:
dependencies:
tapmind_ads_admob_flutter: ^3.0.1
google_mobile_ads: ^5.0.0
Configure Google Ad Manager
Performed by: Ad ops
Create the TapMind company: Admin → Companies → New company → type Ad Network → name TapMind → Ad Network Other Company → toggle Mediation on → Save.
Create/open a yield group: Delivery → Yield groups → New yield group → name (from your account manager) → set ad format → inventory type Mobile → target your ad units.
Add the yield partner: Add yield partner → select TapMind → Integration type Custom Event → Status Active → platform Android or iOS →
Android
Default CPM : provided by your account manager
Label : provided by your account manager
Class Name : com.tapmind.tech.TapMindGamAdapter
Parameter : {"placementName": "provided by your account manager"}
iOS
Default CPM : provided by your account manager
Label : provided by your account manager
Class Name : TapMindGamAdapter
Parameter : {"placementName": "provided by your account manager"}
The placementName value is case-sensitive and must exactly match the Placement Name configured in the TapMind Dashboard.
Note: Official Google documentation: Create a yield group
Verify integration
Performed by: Developer
After install and dashboard configuration:
- Run your app in a debug build. TapMind's test mode is enabled automatically in debug builds and serves test ads at a high fill rate.
- Request an ad through your mediation SDK as you normally would.
- Confirm a TapMind ad fills. Check logs for the tag
TapMindAdapter. - When verified, build in release mode for production - test mode is disabled automatically in release builds, and live ads serve.
Note: Test mode is automatic. It follows your build type: debug = test ads, release = live ads. There is no flag to enable or disable, and nothing to turn off before going live.
Release build QA: There is currently no documented release-safe test path to validate R8/ProGuard without serving live ads. Consumer ProGuard rules from the TapMind AAR are applied automatically when you integrate the published adapter packages.
Troubleshooting
Performed by: Developer
Before diving into logs, confirm adapter class names and the LevelPlay network key against the Class & Network Key Registry, and placementName and eCPM/rate with your account manager.
See Troubleshooting for common symptoms, mediation-specific fixes, release vs debug guidance, and escalation steps. Partner-specific verification steps are under Verify integration above.
