24 lines
811 B
Dart
24 lines
811 B
Dart
import 'package:flutter/material.dart' show WidgetsFlutterBinding;
|
|
import 'package:flutter/widgets.dart' show runApp;
|
|
|
|
import 'app/app.dart';
|
|
import 'app/router/app_router.dart';
|
|
import 'core/storage/token_storage.dart';
|
|
import 'core/utils/device_info_util.dart';
|
|
|
|
/// 应用入口。
|
|
///
|
|
/// 职责:初始化存储、打印设备信息、构建路由与根组件。不包含任何业务或 UI 逻辑。
|
|
void main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
// 初始化本地存储(含超时保护,避免阻塞启动导致卡在首屏)。
|
|
await TokenStorage.initialize()
|
|
.timeout(const Duration(seconds: 5), onTimeout: () {});
|
|
// 设备信息打印不阻塞启动主流程。
|
|
DeviceInfoUtil.printDeviceInfo();
|
|
|
|
final router = buildAppRouter();
|
|
runApp(buildApp(router));
|
|
}
|