EasyAdmobAdsFlutter는 모바일 애플리케이션에 AdMob 광고 형식을 간편하게 통합할 수 있도록 설계된 가벼운 Flutter 패키지입니다. 최소한의 설정으로 Android 및 iOS 플랫폼에서 배너, 인터스티셜, 리워드 광고를 빠르게 구현할 수 있습니다. 복잡한 구성 단계를 추상화하고 광고 관리를 위한 직관적인 API를 제공합니다. 실시간 광고 로딩을 지원하며 사용자 상호작용을 추적하기 위한 콜백도 제공하여 앱 수익화를 쉽게 할 수 있습니다.
사용 사례
배너 광고를 통한 모바일 앱 수익화
앱 화면 사이에 인터스티셜 광고 표시
사용자 인센티브를 위한 보상형 비디오 광고 구현
심층적인 플랫폼 전문 지식 없이 AdMob 통합하기
개발 중 빠른 광고 테스트 활성화
주요 기능
간단한 설정, 코드 줄 수가 적음
다양한 AdMob 광고 유형 지원
크로스 플랫폼 호환성 (Android 및 iOS)
광고 상호작용을 위한 내장 이벤트 리스너
필요한 최소한의 보일러플레이트
적합한 대상
Flutter 개발자 신입용 AdMob
빠른 광고 통합이 필요한 앱
개발 일정이 긴 프로젝트
저 유지보수 광고 솔루션을 찾는 개발자
교육용 또는 애호가용 앱 제작자
고려 사항
유효한 AdMob 계정과 광고 단위 ID가 필요합니다
Google Mobile Ads SDK에 의존합니다
일부 광고 유형에 대해 추가 권한이 필요할 수 있습니다
기본 광고 처리를 초과하는 고급 사용자 정의에는 적합하지 않습니다
공식 SDK에 비해 문서가 제한적
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
Easy AdMob Integration for Flutter
A simple, configurable Flutter wrapper for Google AdMob. One EasyAdMobAds.instance sets up the SDK, GDPR/UMP consent, and a global on/off switch for ads. All six ad formats are supported with their own controller or widget.
Show some ❤️ by giving the repo a ⭐ and liking 👍 the package on pub.dev!
Screenshots
Features
Banner (adaptive, optionally collapsible)
Interstitial
Rewarded
Rewarded Interstitial
App Open (auto-preloaded and shown on app resume)
Native (small/medium templates)
GDPR/UMP consent flow, including the "privacy options" re-consent form
App Tracking Transparency (ATT) consent on iOS 14.5+, requested automatically during initialize()
Network connectivity awareness — ad requests pause while offline and resume as soon as connectivity returns
Any AdType you don't configure automatically falls back to a Google test ad unit ID
(with a warning logged), so the package works out of the box during development.
Usage
// BannerconstEasyBannerAd(collapsible: true, height: 100)
// NativeEasyNativeAd.medium()
// Interstitialfinal interstitialAd = EasyInterstitialAd()..loadAd();
await interstitialAd.showAd();
// Rewardedfinal rewardedAd = EasyRewardedAd(onRewardEarned: (reward) {
// grant the reward
})..loadAd();
await rewardedAd.showAd();
// Rewarded Interstitialfinal rewardedInterstitialAd = EasyRewardedInterstitialAd(onRewardEarned: (reward) {
// grant the reward
})..loadAd();
await rewardedInterstitialAd.showAd();
// App Open — preloaded automatically; show it manually if you want:awaitEasyAdMobAds.instance.appOpenAd?.showAdIfAvailable();
// Turn all ads on/off (e.g. after a "remove ads" purchase)EasyAdMobAds.instance.adsEnabled = false;
// GDPR privacy optionsif (EasyAdMobAds.instance.isPrivacyOptionsRequired) {
EasyAdMobAds.instance.showPrivacyOptionsForm();
}
See the example/ app for a full demo screen with all ad types,
the on/off switch, and the consent button wired up.