elektronika/lib/main.dart

72 lines
2.3 KiB
Dart
Raw Normal View History

2023-02-27 07:12:45 +00:00
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'app/app.dart';
2023-03-28 06:36:10 +00:00
import 'app/core/utils/notification_service.dart';
2023-02-27 07:12:45 +00:00
DBHelper dbHelper = DBHelper();
2023-03-28 06:36:10 +00:00
// Firebase initials is separated, app needs to be initialized
// regardless Firebase
Future<void> _initFBInitials() async {
await initFCMFunctions();
}
2023-02-27 07:12:45 +00:00
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
2023-03-28 06:36:10 +00:00
await _initFBInitials();
2023-02-27 07:12:45 +00:00
SharedPreferences prefs = await SharedPreferences.getInstance();
final String? lang = prefs.getString(Constants.LOCALE);
await initLoginStatus();
runApp(ElektronikaShopApp(lang: lang));
}
class ElektronikaShopApp extends StatelessWidget {
final String? lang;
ElektronikaShopApp({required this.lang});
@override
Widget build(BuildContext context) {
// SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
// systemNavigationBarColor: Colors.blue, // navigation bar color
// statusBarColor: Colors.transparent, // status bar color
// ));
// SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
// statusBarColor: ThemeColor.mainColor,
// ));
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
return LayoutBuilder(
builder: (BuildContext context, BoxConstraints constraints) {
return ScreenUtilInit(
designSize: Size(constraints.maxWidth, constraints.maxHeight),
builder: (_, child) => GetMaterialApp(
initialRoute: lang == null ? AppRoutes.SPLASH : AppRoutes.DASHBOARD,
getPages: AppPages.list,
debugShowCheckedModeBanner: false,
locale: lang == null ? Locale('tm', 'TM') : Locale(lang!, lang!.toUpperCase()),
fallbackLocale: LocalizationService.fallbackLocale,
translations: LocalizationService(),
theme: AppTheme.light,
darkTheme: AppTheme.dark,
themeMode: ThemeMode.light, // ThemeMode.system
),
);
},
);
}
}
// cd ios
//arch -x86_64 pod install
//arch -x86_64 pod install --repo-update