...
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:feature_brain_trainer/feature_brain_trainer.dart';
|
||||
import 'package:service_api/service_api.dart';
|
||||
import 'package:feature_common/feature_common.dart'; // ThemeNotifier가 여기 포함되어 있습니다.
|
||||
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
|
||||
// 세로 모드 고정
|
||||
await SystemChrome.setPreferredOrientations([
|
||||
DeviceOrientation.portraitUp,
|
||||
DeviceOrientation.portraitDown,
|
||||
]);
|
||||
|
||||
// 1. 서비스 및 Notifier 인스턴스 생성
|
||||
final identityService = IdentityService();
|
||||
final sessionNotifier = SessionNotifier(identityService);
|
||||
|
||||
// [Fix] ThemeNotifier 생성 (에러 원인 해결)
|
||||
final themeNotifier = ThemeNotifier();
|
||||
|
||||
// 2. 초기 데이터 로드
|
||||
await sessionNotifier.loadSession();
|
||||
|
||||
runApp(
|
||||
MultiProvider(
|
||||
providers: [
|
||||
// 기존 Provider
|
||||
Provider<IdentityService>.value(value: identityService),
|
||||
ChangeNotifierProvider<SessionNotifier>.value(value: sessionNotifier),
|
||||
|
||||
// [Fix] ThemeNotifier 등록 (이 줄이 없어서 에러가 났습니다)
|
||||
ChangeNotifierProvider<ThemeNotifier>.value(value: themeNotifier),
|
||||
],
|
||||
child: const NeuroGymApp(),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
class NeuroGymApp extends StatelessWidget {
|
||||
const NeuroGymApp({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
// ThemeNotifier를 통해 테마를 동적으로 가져올 수도 있지만,
|
||||
// 기본적으로 Consumer를 쓰거나 context.watch를 씁니다.
|
||||
// 여기서는 기본 설정을 유지합니다.
|
||||
|
||||
return Consumer<ThemeNotifier>(
|
||||
builder: (context, theme, child) {
|
||||
return MaterialApp(
|
||||
title: 'NeuroGym',
|
||||
// [Fix] ThemeNotifier의 테마 적용 (선택 사항이나 권장됨)
|
||||
theme: theme.getTheme(),
|
||||
home: const BrainTrainingHome(),
|
||||
debugShowCheckedModeBanner: false,
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user