Blame view

lib/app/app.dart 2.51 KB
2a29701f   liangchengyou   feat:提交代码
1
2
3
4
  import 'package:flutter/material.dart';
  import 'package:flutter_bloc/flutter_bloc.dart';
  import 'package:flutter_easyloading/flutter_easyloading.dart';
  import 'package:flutter_screenutil/flutter_screenutil.dart';
4224b3f8   吴启风   feat:支付详情页ui
5
  import 'package:responsive_framework/responsive_framework.dart';
3f45a30f   吴启风   feat:集成友盟APM(flut...
6
  import 'package:umeng_apm_sdk/umeng_apm_sdk.dart';
da82bd70   Key   feat: user_inform...
7
  import 'package:wow_english/common/blocs/cachebloc/cache_bloc.dart';
4bf67b91   liangchengyou   feat:设置密码
8
  import 'package:wow_english/common/widgets/hide_keyboard_widget.dart';
e8d9f472   liangchengyou   feat:提交代码
9
  import 'package:wow_english/pages/tab/blocs/tab_bloc.dart';
c948a9ea   liangchengyou   feat:个人信息更改模块功能
10
  import 'package:wow_english/pages/user/bloc/user_bloc.dart';
2a29701f   liangchengyou   feat:提交代码
11
  import 'package:wow_english/route/route.dart';
2a29701f   liangchengyou   feat:提交代码
12
13
  
  class App extends StatelessWidget {
3f45a30f   吴启风   feat:集成友盟APM(flut...
14
15
16
    const App([this._navigatorObserver]);
  
    final NavigatorObserver? _navigatorObserver;
2a29701f   liangchengyou   feat:提交代码
17
18
19
20
  
    @override
    Widget build(BuildContext context) {
      return ScreenUtilInit(
4847e3dc   liangchengyou   feat:添加设备方向处理
21
        designSize: const Size(667, 375),
05f9b20a   Key   fixed: api调用方式,未完善
22
        builder: (_, __) => MultiBlocProvider(
2a29701f   liangchengyou   feat:提交代码
23
            providers: [
05f9b20a   Key   fixed: api调用方式,未完善
24
              BlocProvider<TabBloc>(create: (_) => TabBloc()),
da82bd70   Key   feat: user_inform...
25
              BlocProvider<CacheBloc>(create: (_) => CacheBloc()),
c948a9ea   liangchengyou   feat:个人信息更改模块功能
26
              BlocProvider<UserBloc>(create: (_) => UserBloc()),
2a29701f   liangchengyou   feat:提交代码
27
            ],
4bf67b91   liangchengyou   feat:设置密码
28
29
30
31
            child: HideKeyboard(
              child: MaterialApp(
                title: 'WowEnglish',
                theme: ThemeData(
1d5315dd   liangchengyou   feat:添加字体,调整文件结构
32
                  fontFamily: 'HannotateSC',
91fe517a   liangchengyou   feat:看视频功能开发
33
                  colorScheme: ColorScheme.fromSeed(seedColor: Colors.white),
4bf67b91   liangchengyou   feat:设置密码
34
35
                  useMaterial3: true,
                ),
f0d56772   liangchengyou   feat:更新尺寸适配
36
                builder: EasyLoading.init(
05f9b20a   Key   fixed: api调用方式,未完善
37
38
39
40
41
42
43
                    builder: (context, child) => ResponsiveBreakpoints(breakpoints: const [
                          Breakpoint(start: 0, end: 450, name: MOBILE),
                          Breakpoint(start: 0, end: 450, name: PHONE),
                          Breakpoint(start: 451, end: 800, name: TABLET),
                          Breakpoint(start: 801, end: 1920, name: DESKTOP),
                          Breakpoint(start: 1921, end: double.infinity, name: '4K'),
                        ], child: child!)),
4bf67b91   liangchengyou   feat:设置密码
44
45
46
                initialRoute: AppRouteName.splash,
                navigatorKey: AppRouter.navigatorKey,
                onGenerateRoute: AppRouter.generateRoute,
3f45a30f   吴启风   feat:集成友盟APM(flut...
47
48
49
50
51
                navigatorObservers: <NavigatorObserver>[
                  // 带入ApmNavigatorObserver实例用于路由监听
                  // 如果不带入SDK监听器将无法获知页面(PV)入栈退栈行为,错误率(Dart异常数/FlutterPV次数)将异常攀升。
                  _navigatorObserver ?? ApmNavigatorObserver.singleInstance
                ],
2a29701f   liangchengyou   feat:提交代码
52
              ),
2a29701f   liangchengyou   feat:提交代码
53
54
55
56
            )),
      );
    }
  }