Files
dzc 82800373ca fix:图片访问
fix:权限修改
2026-10-29 14:26:08 +08:00

64 lines
2.3 KiB
Dart

import 'package:pj_supermarket_cloud/common/utils/app/file_access.dart';
import 'dart:async';
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:flutter_subscreen_plugin/flutter_subscreen_plugin.dart';
import 'package:get/get.dart';
import 'package:pj_supermarket_cloud/app.dart';
import 'package:pj_supermarket_cloud/common/index.dart';
import 'package:pj_supermarket_cloud/sub_screen/page/index.dart';
void main() {
checkSubScreen();
}
Future<void> checkSubScreen() async {
print("当前的屏幕${window.defaultRouteName}");
switch (window.defaultRouteName) {
case "/":
WidgetsFlutterBinding.ensureInitialized();
DartPluginRegistrant.ensureInitialized();
FileAccess.initialize();
await AppRuntimeTool.initializePlatform();
final appTheme = Get.put(AppThemeControl());
// 全局餐段状态供商品管理和取餐广播任务读取。
final productHourType = Get.put(
ProductHourTypeControl(),
permanent: true,
);
// 管理操作临时解锁会话,供终端顶栏安全锁倒计时读取。
Get.put(TerminalAdminSessionControl(), permanent: true);
// 睡眠状态需要跨终端工作区路由常驻,但不会进入副屏 Engine。
Get.put(TerminalSleepControl(), permanent: true);
// 终端顶栏五设备逐项显隐偏好,常驻供外壳读取。
final terminalDeviceStatus = Get.put(
TerminalDeviceStatusControl(),
permanent: true,
);
// 人脸识别会话服务常驻,供收银识别流程和空闲判定读取。
Get.put(FaceRecognitionSessionService(), permanent: true);
runApp(MainApp());
await Future.microtask(() async {
final app = Get.put(AppControl());
await app.initAsync();
await appTheme.initAsync();
await productHourType.initAsync();
await terminalDeviceStatus.initAsync();
});
break;
case "subMain":
WidgetsFlutterBinding.ensureInitialized();
DartPluginRegistrant.ensureInitialized();
FileAccess.initialize();
bool isMultipleScreen = await SubScreenPlugin.isMultipleScreen;
bool isOverlay = await SubScreenPlugin.checkOverlayPermission;
if (isMultipleScreen && isOverlay) {
runApp(SubAppPage());
SubScreenPlugin.doubleScreenShow();
}
break;
}
}