initialize method
Initialize the ads manager with your custom ad IDs
bannerAdUnitId - Your banner ad unit ID (optional)
interstitialAdUnitId - Your interstitial ad unit ID (optional)
rewardedAdUnitId - Your rewarded ad unit ID (optional)
nativeAdUnitId - Your native ad unit ID (optional)
testDeviceIds - List of test device IDs for development
onAdError - Global error callback
onAdLoaded - Global ad loaded callback
onAdShown - Global ad shown callback
onAdClosed - Global ad closed callback
Implementation
Future<void> initialize({
String? bannerAdUnitId,
String? interstitialAdUnitId,
String? rewardedAdUnitId,
String? nativeAdUnitId,
List<String>? testDeviceIds,
Function(String)? onAdError,
Function(String)? onAdLoaded,
Function(String)? onAdShown,
Function(String)? onAdClosed,
}) async {
// Set ad unit IDs (use provided IDs or fallback to test IDs)
_bannerAdUnitId = bannerAdUnitId ?? AdConstants.testBannerAdUnitId;
_interstitialAdUnitId = interstitialAdUnitId ?? AdConstants.testInterstitialAdUnitId;
_rewardedAdUnitId = rewardedAdUnitId ?? AdConstants.testRewardedAdUnitId;
_nativeAdUnitId = nativeAdUnitId ?? AdConstants.testNativeAdUnitId;
// Set global callbacks
this.onAdError = onAdError;
this.onAdLoaded = onAdLoaded;
this.onAdShown = onAdShown;
this.onAdClosed = onAdClosed;
// Initialize Mobile Ads SDK
await MobileAds.instance.initialize();
// Set request configuration
RequestConfiguration requestConfiguration = RequestConfiguration(
testDeviceIds: testDeviceIds ?? (kDebugMode ? ['YOUR_TEST_DEVICE_ID'] : []),
);
MobileAds.instance.updateRequestConfiguration(requestConfiguration);
print('✅ Google Ads Helper initialized successfully');
}