更新
This commit is contained in:
110
lib/main.dart
110
lib/main.dart
@@ -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()),
|
||||
]));
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user