import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/material.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'app/app.dart'; import 'firebase_options.dart'; @pragma('vm:entry-point') Future _firebaseMessagingBackgroundHandler(RemoteMessage message) async { try { await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); } catch (_) {} debugPrint('FCM background: ${message.messageId} | data: ${message.data}'); } Future main() async { WidgetsFlutterBinding.ensureInitialized(); try { await dotenv.load(fileName: 'assets/.env'); } catch (_) { // .env no disponible — api_client.dart usa los valores por defecto } try { await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); } on UnsupportedError { await Firebase.initializeApp(); } FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler); runApp(const ProviderScope(child: RecolectaApp())); }