ad_sdk library
ad_sdk — Dual-provider Flutter Ad SDK
Supports AdMob (Google Mobile Ads) and AppLovin MAX via a single API.
Quick Start
// 1. In main.dart, initialize before runApp():
await AdManager().initialize(
config: AdConfig(
provider: AdProvider.appLovin,
appLovin: AppLovinConfig(
sdkKey: 'YOUR_SDK_KEY',
bannerId: 'YOUR_BANNER_ID',
interstitialId: 'YOUR_INTER_ID',
appOpenId: 'YOUR_APP_OPEN_ID',
rewardedId: 'YOUR_REWARDED_ID',
),
),
onComplete: (success, gaid) {},
);
// 2. Add route observers to your app:
navigatorObservers: [adRouteObserver, AdScreenRouteLogger()],
// 3. Extend AdScreen on screens with ads:
class HomeScreen extends AdScreen { ... }
class _HomeScreenState extends AdScreenState<HomeScreen> {
Widget build(context) => Column(children: [buildBanner(), ...]);
}
Classes
- AdConfig
- Master configuration for AdManager.
- AdLoadingDialog
- Loading dialog shown before a fullscreen ad (inter / rewarded / app-open).
- AdManager
- Dual-provider Ad Manager singleton.
- AdMobConfig
- AdMob ad unit IDs configuration.
- AdSafetyConfig
- Ad safety manager — 12 anti-fraud protections.
- AdSafetyParams
- Tunable parameters for AdSafetyConfig.
- AdSafetyResult
- Result of an ad safety check.
- AdScreen
- Base widget class for screens that use ads.
- AdScreenRouteLogger
- Optional logger that records navigation events via SafeLogger.
-
AdScreenState<
T extends AdScreen> - Base state for AdScreen. Provides buildBanner, showInterstitialAd, and showRewardedAd helpers with built-in safety checks.
- AppLovinConfig
- AppLovin MAX ad unit IDs configuration.
- BannerAdWidget
- Banner Ad Widget — dual provider (AdMob / AppLovin MAX).
- BoolEvent
- Simple event bus for internal SDK communication.
- SafeLogger
- Internal logger for ad_sdk.
- SimpleEventBus
- TopToast
- Displays a beautiful animated toast at the top-center of the screen.
Enums
- AdLogLevel
- Controls how much the SDK logs.
- AdProvider
- Ad provider selection.
Constants
- adMayAppearEn → const String
- adMayAppearVi → const String
- adPlsNoteEn → const String
- adPlsNoteVi → const String
Properties
-
adRouteObserver
→ RouteObserver<
ModalRoute< void> > -
Global RouteObserver for banner ad lifecycle management.
final