Ads for Flutter
AdMob ads without leaking SDK code into the app
Only the ads feature imports google_mobile_ads. Every other screen asks the ads service to show an ad, with consent handled up front.
What this feature covers
- Ad formats: Banner, interstitial, rewarded, rewarded interstitial and app open ads.
- Consent: The UMP consent flow and ATT, gathered before any ad request.
- Frequency caps: Persisted caps so full-screen ads do not overwhelm a session.
- Unit ids: Per-platform and per-build ad unit ids from one provider.
- Release checks: A pre-release checklist covering testing, mediation and policy.
How Flutter Agent Kit implements it
The skill splits ads into four layers, each with one job: the widget renders, the feature screen decides when to show, an AdsService and its notifiers decide how, and an adUnitIdsProvider decides which unit id to use. Banner and native ads are modeled as autoDispose notifiers that own and dispose the ad instance, while full-screen and app open ads are plain services.
The hard boundary is that only lib/features/ads/ imports google_mobile_ads, and every request is gated on canRequestAds(). Ads target Android and iOS only, since the plugin has no web or desktop support, and the skill tells the agent never to add ads to a paid or subscription app.
Frequently asked questions
Does AdMob work on web or desktop?
No. google_mobile_ads supports Android and iOS only. The skill guards the feature so it never loads on an unsupported platform, and the capability layer renders an explicit disabled state instead of a silent no-op.
Should a paid app add ads?
No. The skill is explicit that ads are for free, ad-monetized apps only. Paid or subscription apps do not add the ads feature, which keeps the two monetization paths from fighting each other.
Get Flutter Agent Kit
Flutter Agent Kit ships this as a ready feature skill, together with the AGENTS.md context layer and the rest of the skills. €99.99 one-time, lifetime updates, unlimited personal and commercial projects.
Browse all features included in Flutter Agent Kit.