@@ -9,6 +9,9 @@ import 'package:data_inmemory/data_inmemory.dart';
99import 'package:data_repository/data_repository.dart' ;
1010import 'package:flutter/material.dart' ;
1111import 'package:flutter_bloc/flutter_bloc.dart' ;
12+ import 'package:flutter_news_app_mobile_client_full_source_code/ads/ad_provider.dart' ;
13+ import 'package:flutter_news_app_mobile_client_full_source_code/ads/ad_service.dart' ;
14+ import 'package:flutter_news_app_mobile_client_full_source_code/ads/admob_ad_provider.dart' ;
1215import 'package:flutter_news_app_mobile_client_full_source_code/app/app.dart' ;
1316import 'package:flutter_news_app_mobile_client_full_source_code/app/config/config.dart'
1417 as app_config;
@@ -38,6 +41,11 @@ Future<Widget> bootstrap(
3841 late final AuthRepository authenticationRepository;
3942 HttpClient ? httpClient;
4043
44+ // Initialize AdProvider and AdService
45+ final AdProvider adProvider = AdMobAdProvider (logger: logger);
46+ final AdService adService = AdService (adProvider: adProvider, logger: logger);
47+ await adService.initialize (); // Initialize AdMob SDK early
48+
4149 if (appConfig.environment == app_config.AppEnvironment .demo) {
4250 authClient = AuthInmemory ();
4351 authenticationRepository = AuthRepository (
@@ -265,13 +273,14 @@ Future<Widget> bootstrap(
265273 headlinesRepository: headlinesRepository,
266274 topicsRepository: topicsRepository,
267275 countriesRepository: countriesRepository,
268- sourcesRepository: sourcesRepository ,
276+ sourcesRepository: sourcesClient ,
269277 userAppSettingsRepository: userAppSettingsRepository,
270278 userContentPreferencesRepository: userContentPreferencesRepository,
271279 remoteConfigRepository: remoteConfigRepository,
272280 userRepository: userRepository,
273281 kvStorageService: kvStorage,
274282 environment: environment,
275283 demoDataMigrationService: demoDataMigrationService,
284+ adService: adService, // Provide the AdService
276285 );
277286}
0 commit comments