import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; import 'package:flutter/services.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:injector/injector.dart'; import 'package:prosappco/app_view.dart'; import 'package:prosappco/blocs/authentication_bloc/authentication_bloc.dart'; import 'package:prosappco/blocs/my_user_bloc/my_user_bloc.dart'; import 'package:prosappco/blocs/notification_bloc/notification_bloc.dart'; import 'package:prosappco/blocs/professional_bloc/professional_bloc.dart'; import 'package:prosappco/blocs/professional_profile_bloc/professional_profile_bloc.dart'; import 'package:prosappco/blocs/profile_bloc/profile_bloc.dart'; import 'package:prosappco/dependency/app_di.dart'; import 'package:prosappco/local_notifications/local_notifications.dart'; import 'simple_bloc_observer.dart'; import 'firebase_options.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); // Asegúrate de inicializar Firebase antes de cualquier otra operación relacionada con Firebase. // Inicialización de notificaciones locales después de Firebase. await LocalNotifications.initializeLocalNotifications(); FirebaseMessaging.onBackgroundMessage(firebaseMessagingBackgroundHandler); Bloc.observer = SimpleBlocObserver(); SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]); AppDI().register(); runApp( MultiBlocProvider( providers: [ BlocProvider( create: (context) => Injector.appInstance.get(), ), BlocProvider( create: (context) => Injector.appInstance.get(), ), BlocProvider( create: (context) => Injector.appInstance.get(), ), BlocProvider( create: (context) => Injector.appInstance.get(), ), BlocProvider( create: (context) => Injector.appInstance.get(), ), BlocProvider( create: (context) => Injector.appInstance.get(), ) ], child: BlocBuilder( builder: (context, state) { return const SafeArea(child: MyAppView()); }, ), ), ); }