import 'package:rogapp/features/initializer/camera_check.dart'; import 'package:rogapp/features/initializer/icheck.dart'; import 'package:rogapp/features/initializer/location_check.dart'; class AppInitializer { final List checks; AppInitializer() : checks = [ LocationCheck(), CameraCheck(), //NetworkCheck(), ]; Future permissionStatus() async { return await LocationCheck().locationPermissionStatus() && await CameraCheck().cameraPermissionStatus(); } Future initializeApp() async { if (!await runPreFlightChecks()) { return false; } //await initializeTileCaching(); await loadInitialData(); await configureGlobalSettings(); // Add other initialization tasks as needed return true; } Future runPreFlightChecks() async { for (var check in checks) { if (!await check.check()) { return false; } } return true; } Future initializeTileCaching() async {} Future loadInitialData() async { // Logic to preload data that your app will need } Future configureGlobalSettings() async { // Logic to set up any global configurations for your app } // You can add more methods for other initialization tasks }