Files
kimoi/lib/main.dart
2023-10-17 12:23:11 -04:00

43 lines
1.3 KiB
Dart

import 'dart:io';
import 'package:firebase_analytics/firebase_analytics.dart';
import 'package:flutter/material.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:kimoi/src/config/router/router_controller.dart';
import 'package:kimoi/src/config/router/router_service.dart';
import 'firebase_options.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:kimoi/src/main_app.dart';
import 'src/config/theme/theme.dart';
final themeController = ThemeController(ThemeService());
final routerController = RouterController(RouterService());
void main() async {
WidgetsFlutterBinding.ensureInitialized();
if (!Platform.isLinux) {
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
await FirebaseAnalytics.instance.logAppOpen();
}
if (Platform.isAndroid) {
await AndroidInAppWebViewController.setWebContentsDebuggingEnabled(true);
}
await ThemeService.init();
await RouterService.init();
await themeController.loadTheme();
await routerController.loadInitialLocation();
await dotenv.load(fileName: ".env");
runApp(const ProviderScope(child: MainApp()));
}