- 在AndroidManifest.xml中添加USB Host权限和设备过滤器配置 - 新增设备控制国际化词条包括速度档位、吹气时间等 - 重构数据库结构将速度相关字段统一为档位数值存储 - 添加通用KV存储方法用于settings表数据读写 - 优化首页导航实现tab间跳转和状态保持功能 - 更新程序详情页面布局和参数表单界面 - 移除模拟运行器相关测试代码 - 添加USB串口通信依赖包usb_serial
50 lines
1.5 KiB
Dart
50 lines
1.5 KiB
Dart
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
import 'package:go_router/go_router.dart';
|
|
|
|
import '../../features/home/pages/home_page.dart';
|
|
import '../../features/programs/pages/programs_page.dart';
|
|
import '../../features/program_detail/pages/program_detail_page.dart';
|
|
import '../../features/settings/pages/settings_page.dart';
|
|
import '../../features/home/pages/complete_page.dart';
|
|
|
|
/// 应用路由配置
|
|
final goRouterProvider = Provider<GoRouter>((ref) {
|
|
return GoRouter(
|
|
initialLocation: '/',
|
|
routes: [
|
|
GoRoute(
|
|
path: '/',
|
|
name: 'home',
|
|
builder: (context, state) {
|
|
// 支持 ?tab=N 查询参数,用于从其他页面跳回首页并切换到指定 tab
|
|
final tabParam = state.uri.queryParameters['tab'];
|
|
final initialTab = int.tryParse(tabParam ?? '') ?? 0;
|
|
return HomePage(initialTab: initialTab);
|
|
},
|
|
),
|
|
GoRoute(
|
|
path: '/programs',
|
|
name: 'programs',
|
|
builder: (context, state) => const ProgramsPage(),
|
|
),
|
|
GoRoute(
|
|
path: '/programs/:id',
|
|
name: 'programDetail',
|
|
builder: (context, state) {
|
|
final id = state.pathParameters['id'];
|
|
return ProgramDetailPage(programId: id ?? '');
|
|
},
|
|
),
|
|
GoRoute(
|
|
path: '/settings',
|
|
name: 'settings',
|
|
builder: (context, state) => const SettingsPage(),
|
|
),
|
|
GoRoute(
|
|
path: '/complete',
|
|
name: 'complete',
|
|
builder: (context, state) => const CompletePage(),
|
|
),
|
|
],
|
|
);
|
|
}); |