55 lines
1.7 KiB
Dart
55 lines
1.7 KiB
Dart
import 'dart:developer' as developer;
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
import 'package:flutter_samples/router/router.dart';
|
|
import 'package:flutter_samples/styles/styles.dart';
|
|
import 'package:logging/logging.dart';
|
|
|
|
void main() {
|
|
_setupLogging();
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
runApp(const ProviderScope(child: MyApp()));
|
|
}
|
|
|
|
class MyApp extends StatelessWidget {
|
|
const MyApp({super.key});
|
|
|
|
// This widget is the root of your application.
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return MaterialApp.router(
|
|
theme: ThemeData(
|
|
fontFamily: 'PingFang SC',
|
|
colorScheme: ColorScheme.fromSeed(seedColor: $styles.colors.mainColor),
|
|
useMaterial3: true,
|
|
scaffoldBackgroundColor: $styles.colors.bgColor,
|
|
bottomNavigationBarTheme: BottomNavigationBarThemeData(
|
|
backgroundColor: $styles.colors.bgColor,
|
|
),
|
|
),
|
|
routerConfig: router,
|
|
debugShowCheckedModeBanner: false,
|
|
);
|
|
}
|
|
}
|
|
|
|
void _setupLogging() {
|
|
Logger.root.level = Level.ALL; // Set the default log level
|
|
Logger.root.onRecord.listen((LogRecord record) {
|
|
developer.log(
|
|
record.message, // 主要信息
|
|
time: record.time, // 日志时间
|
|
sequenceNumber: record.sequenceNumber, // 序列号
|
|
level: record.level.value, // 日志级别 (数字表示)
|
|
name: record.loggerName, // 记录器名称
|
|
zone: record.zone, // Zone 信息 (通常为 null)
|
|
error: record.error, // 错误对象 (如果有)
|
|
stackTrace: record.stackTrace, // 堆栈跟踪 (如果有)
|
|
);
|
|
});
|
|
}
|
|
|
|
/// Global helpers
|
|
AppStyle get $styles => AppStyle();
|