2025-02-18 22:56:50 +01:00

39 lines
970 B
Dart

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<void> 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;
}
}