import 'package:google_mobile_ads/google_mobile_ads.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; class AdHelper { static BannerAd? bannerAd; static bool isBannerAdLoaded = false; static Future loadBannerAd(Function setStateCallback) async { await dotenv.load(fileName: ".env"); final adUnitId = dotenv.env['AD_UNIT_ID'] ?? ''; bannerAd = BannerAd( adUnitId: adUnitId, // Replace with actual ID size: AdSize.banner, request: AdRequest(), listener: BannerAdListener( onAdLoaded: (ad) { setStateCallback(() { isBannerAdLoaded = true; }); }, onAdFailedToLoad: (ad, error) { print('Banner Ad failed to load: $error'); isBannerAdLoaded = false; ad.dispose(); }, ), ); bannerAd?.load(); } static void disposeAd() { bannerAd?.dispose(); bannerAd = null; isBannerAdLoaded = false; } }