25 lines
758 B
Dart
25 lines
758 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
|
|
import 'app/app.dart';
|
|
import 'core/notifications/local_notifications.dart';
|
|
import 'core/providers.dart';
|
|
import 'core/storage/token_storage.dart';
|
|
|
|
Future<void> main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
// SharedPreferences 必须在 runApp 之前完成异步读取,再通过 override 注入。
|
|
final storage = await TokenStorage.open();
|
|
|
|
// 系统通知渠道 + Android 13 通知权限;冷启动点击通知的路由也会在此暂存。
|
|
await LocalNotifications.instance.init();
|
|
|
|
runApp(
|
|
ProviderScope(
|
|
overrides: [tokenStorageProvider.overrideWithValue(storage)],
|
|
child: const VoltLinkApp(),
|
|
),
|
|
);
|
|
}
|