import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:firebase_core/firebase_core.dart'; import 'package:get_storage/get_storage.dart'; import 'package:intl/date_symbol_data_local.dart'; import 'app/routes/app_pages.dart'; import 'app/modules/home/controllers/home_controller.dart'; import 'app/modules/jadwal/controllers/jadwal_controller.dart'; import 'package:flutter_local_notifications/flutter_local_notifications.dart'; final FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin(); Future main() async { WidgetsFlutterBinding.ensureInitialized(); // Inisialisasi GetStorage untuk penyimpanan lokal await GetStorage.init(); // Inisialisasi Firebase await Firebase.initializeApp(); // Inisialisasi format tanggal lokal Indonesia await initializeDateFormatting('id_ID', null); // Inisialisasi notifikasi lokal await _initLocalNotification(); // Registrasi controller global (jika diperlukan) Get.lazyPut(() => HomeController()); Get.lazyPut(() => JadwalController()); runApp( GetMaterialApp( debugShowCheckedModeBanner: false, title: "My Fish", initialRoute: Routes.SPLASH_SCREEN, getPages: AppPages.routes, ), ); } Future _initLocalNotification() async { const AndroidInitializationSettings androidSettings = AndroidInitializationSettings('@mipmap/ic_launcher'); const InitializationSettings initSettings = InitializationSettings(android: androidSettings); await flutterLocalNotificationsPlugin.initialize(initSettings); }