re factor rog
This commit is contained in:
53
lib/features/initializer/app_initializer.dart
Normal file
53
lib/features/initializer/app_initializer.dart
Normal file
@ -0,0 +1,53 @@
|
||||
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<ICheck> checks;
|
||||
|
||||
AppInitializer()
|
||||
: checks = [
|
||||
LocationCheck(),
|
||||
CameraCheck(),
|
||||
//NetworkCheck(),
|
||||
];
|
||||
|
||||
Future<bool> permissionStatus() async {
|
||||
return await LocationCheck().locationPermissionStatus() &&
|
||||
await CameraCheck().cameraPermissionStatus();
|
||||
}
|
||||
|
||||
Future<bool> initializeApp() async {
|
||||
if (!await runPreFlightChecks()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
//await initializeTileCaching();
|
||||
await loadInitialData();
|
||||
await configureGlobalSettings();
|
||||
// Add other initialization tasks as needed
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Future<bool> runPreFlightChecks() async {
|
||||
for (var check in checks) {
|
||||
if (!await check.check()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Future<void> initializeTileCaching() async {}
|
||||
|
||||
Future<void> loadInitialData() async {
|
||||
// Logic to preload data that your app will need
|
||||
}
|
||||
|
||||
Future<void> configureGlobalSettings() async {
|
||||
// Logic to set up any global configurations for your app
|
||||
}
|
||||
|
||||
// You can add more methods for other initialization tasks
|
||||
}
|
||||
Reference in New Issue
Block a user