runApplication static method
运行应用
Implementation
static Future<void> runApplication({
required Future<void> Function() onInit,
required Widget app,
required AssetLoader localAssetLoader,
List<Locale>? supportedLocales,
String? localPath,
Future<void> Function()? onFinish,
}) async {
_setupErrorBuilder();
WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
await EasyLocalization.ensureInitialized();
EasyLocalization.logger.enableLevels = [LevelMessages.error, LevelMessages.warning];
EasyLocalization.logger.printer = easyLocalizationPrint;
Jiffy.setLocale('zh_CN');
await StorageService.instance.init();
await Get.putAsync(() => SystemStore().init());
await createCacheDirectory();
await LogService.instance.init();
Get.put<ConfigStore>(ConfigStore());
await LogService.instance.removeExpireLogFiles();
await onInit();
if (ConfigStore.to.config.app.lockVertical == true) UtilInternal.lockVerticalScreen();
runApp(
EasyLocalization(
path: localPath ?? 'assets/i18n',
supportedLocales: [...presetLocales, ...supportedLocales ?? []],
saveLocale: false,
fallbackLocale: const Locale('zh', 'CN'),
startLocale: EnumLanguageMode.getMode(SystemStore.to.language),
assetLoader: localAssetLoader,
child: app,
),
);
if (!UtilInternal.isWeb) _setupStatusBar();
FlutterNativeSplash.remove();
await onFinish?.call();
}