This commit is contained in:
wyf
2025-05-13 11:59:04 +08:00
parent eae7a2284d
commit fb5c3864a3
101 changed files with 8427 additions and 1953 deletions

View File

@@ -1,3 +1,4 @@
import 'dart:async';
import 'dart:convert';
import 'package:EasyDartModule/EasyDartModule.dart';
@@ -7,15 +8,19 @@ import 'package:ef/ef.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:fluwx/fluwx.dart';
import 'package:get_storage/get_storage.dart';
import 'package:localstorage/localstorage.dart';
import 'package:syncfusion_localizations/syncfusion_localizations.dart';
import 'package:vbvs_app/common/color/ServiceConstant.dart';
import 'package:vbvs_app/common/util/CheckNetwork.dart';
import 'package:vbvs_app/common/util/CommonVariables.dart';
import 'package:vbvs_app/common/util/FitTool.dart';
import 'package:vbvs_app/controller/device/blueteeth_bind_controller.dart';
import 'package:vbvs_app/controller/device/body_device_controller.dart';
import 'package:vbvs_app/controller/device/device_calibration_controller.dart';
import 'package:vbvs_app/controller/device/device_share_controller.dart';
import 'package:vbvs_app/controller/device/device_share_list_controller.dart';
import 'package:vbvs_app/controller/device/device_type_controller.dart';
import 'package:vbvs_app/controller/home/home_controller.dart';
import 'package:vbvs_app/controller/login/login_controller.dart';
@@ -23,6 +28,9 @@ import 'package:vbvs_app/controller/main_bottom/global_controller.dart';
import 'package:vbvs_app/controller/main_bottom/main_page_controller.dart';
import 'package:vbvs_app/controller/message/message_controller.dart';
import 'package:vbvs_app/controller/person/person_controller.dart';
import 'package:vbvs_app/controller/repair/repair_controller.dart';
import 'package:vbvs_app/controller/setting/language/language_controller.dart';
import 'package:vbvs_app/controller/setting/pdf/PdfController.dart';
import 'package:vbvs_app/controller/theme_controller/ThemeController.dart';
import 'package:vbvs_app/controller/time/countdown_controller.dart';
import 'package:vbvs_app/language/AppLanguage.dart';
@@ -34,7 +42,12 @@ import 'routers/routers.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
final Locale? deviceLocale = Get.deviceLocale;
print('系统语言: ${deviceLocale?.languageCode}');
// await AppLanguage().loadLanguage("en_US");
await AppLanguage().loadLanguage("zh_CN");
await initLanguageSetting();
WidgetsFlutterBinding.ensureInitialized();
// ApiService.init();
@@ -44,10 +57,12 @@ Future<void> main() async {
initEasyDartModule();
await initLogin();
await initLog();
await messageStatus();
startMessagePolling();
// 检查网络
// Checknetwork.checkNetwork();
Checknetwork.checkNetwork();
// 微信开放平台注册
// initWX();
initWX();
// // 初始化 flutter_xupdate android app 更新
// initXUpdate();
@@ -58,6 +73,45 @@ Future<void> main() async {
});
}
initLanguageSetting() {
Get.put(LanguageController());
LanguageController languageController = Get.find();
languageController.initLanuageList();
}
// 初始化微信开放平台注册
Future<void> initWX() async {
Fluwx fluwx = Fluwx();
fluwx.registerApi(
//请填写自己的微信appid
appId: "wxeb2688220799e2c5",
doOnAndroid: true,
doOnIOS: true,
);
}
Timer? _messageTimer;
void startMessagePolling() {
// 避免重复启动
_messageTimer?.cancel();
_messageTimer = Timer.periodic(Duration(seconds: 5), (timer) async {
try {
MessageController messageController = Get.find();
messageController.getMessageStatus();
// print("轮询消息状态成功");
} catch (e) {
print("轮询消息状态失败: $e");
}
});
}
messageStatus() async {
Get.put(MessageController());
MessageController messageController = Get.find();
await messageController.getMessageStatus();
}
void initEasyDartModule() {
try {
EasyDartModule.init(
@@ -129,49 +183,6 @@ Future<void> initLogin() async {
}
}
// 初始化微信开放平台注册
// Future<void> initWX() async {
// Fluwx fluwx = Fluwx();
// fluwx.registerApi(
// //请填写自己的微信appid
// appId: "wx929c548fea6af9c7",
// doOnAndroid: true,
// doOnIOS: true,
// universalLink: "https://zhmht.swes.com.cn/app/");
// }
// // 初始化 flutter_xupdate android app 更新
// Future<void> initXUpdate() async {
// if (Platform.isAndroid) {
// FlutterXUpdate.init(
// // 是否输出日志
// debug: true,
// // 是否使用post请求
// isPost: true,
// // post请求是否是上传json
// isPostJson: false,
// // 请求响应超时时间
// timeout: 25000,
// // 是否开启自动模式
// isWifiOnly: false,
// // 是否开启自动模式
// isAutoMode: false,
// // 需要设置的公共参数
// supportSilentInstall: false,
// // 在下载过程中,如果点击了取消的话,是否弹出切换下载方式的重试提示弹窗
// enableRetry: false)
// .then((value) {
// print('初始化成功: $value');
// }).catchError((error) {
// print(error);
// });
// FlutterXUpdate.setUpdateHandler(onUpdateError: (message) async {
// print('onUpdateError: $message');
// });
// }
// }
class MyApp extends StatelessWidget {
MyApp({super.key});
final ThemeController themeController = Get.put(ThemeController());
@@ -190,7 +201,8 @@ class MyApp extends StatelessWidget {
FitTool.init(width < height ? width : height);
return GetMaterialApp(
translations: AppLanguage(),
locale: const Locale("zh", "CN"),
// locale: const Locale("zh", "CN"),
locale: AppLanguage().currentLocale, // ✅ 动态读取当前语言
fallbackLocale: const Locale("zh", "CN"),
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
@@ -200,6 +212,7 @@ class MyApp extends StatelessWidget {
],
supportedLocales: [
const Locale('zh', 'CN'), // 中文
const Locale('en', 'US'), // ⚠️ 添加你支持的语言
],
debugShowCheckedModeBanner: false,
title: '',
@@ -219,7 +232,10 @@ class MyApp extends StatelessWidget {
Get.lazyPut(() => BodyDeviceController()),
Get.lazyPut(() => HomeController()),
Get.lazyPut(() => DeviceShareController()),
Get.lazyPut(() => MessageController()),
Get.lazyPut(() => DeviceShareListController()),
Get.lazyPut(() => DeviceCalibrationController()),
Get.lazyPut(() => RepairController()),
Get.lazyPut(() => PdfController()),
]));
});
}