lab_global.dart 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. // import 'dart:async';
  2. // import 'package:fis_i18n/i18n.dart';
  3. // import 'package:flutter/foundation.dart';
  4. // import 'package:flutter/material.dart';
  5. // import 'package:flyinsono/architecture/config/config.dart';
  6. // import 'package:flyinsono/architecture/services/index.dart';
  7. // import 'package:flyinsono/architecture/states/states.dart';
  8. // import 'package:fis_common/web/web_asset_bundle.dart';
  9. // import 'package:fis_common/logger/logger.dart';
  10. // import 'package:flutter/services.dart';
  11. // import 'package:flyinsono/architecture/storage/shared_storage.dart';
  12. // import 'package:flyinsono/architecture/theme.dart';
  13. // import 'package:fis_ui/utils/sizer/sizer.dart';
  14. // import 'package:flyinsono/rpc.dart';
  15. // import 'package:get/get.dart';
  16. // import 'package:fis_theme/theme.dart';
  17. // import 'package:universal_html/js.dart' as js;
  18. // import 'manager/index.dart';
  19. // /// 全局设置
  20. // class LabGlobal {
  21. // static AssetBundle? _assetBundle;
  22. // static AssetBundle get assetBundle => _assetBundle!;
  23. // /// 配置
  24. // static ConfigService get config => ConfigService.ins;
  25. // /// 初始化
  26. // static Future<void> init() async {
  27. // print('Lab Global init start');
  28. // WidgetsFlutterBinding.ensureInitialized();
  29. // await Get.putAsync<SharedStorageService>(() => SharedStorageService.init());
  30. // // 状态
  31. // await Store.init();
  32. // // 日志
  33. // if (kReleaseMode) {
  34. // // 生产环境
  35. // Get.isLogEnable = false;
  36. // } else {
  37. // // debug/profile 环境
  38. // logger.setMinimumLevel(LogLevel.Degbug);
  39. // }
  40. // await logger.init();
  41. // _initAssetBundle();
  42. // Sizer.init();
  43. // // 配置
  44. // final config = await ConfigService.init();
  45. // Get.put(config);
  46. // print('currentAddress:${config.data.server.current}');
  47. // // rpc服务
  48. // _initRpc();
  49. // rpc.platform.setRpcUrl(config.data.server.current!);
  50. // FManagerGuide.setup();
  51. // // 依赖注入
  52. // await initServices();
  53. // // 国际化
  54. // await _initI18n();
  55. // print('Global set theme start');
  56. // // 主题
  57. // final theme = AppTheme(themeMode: ThemeMode.system);
  58. // await FTheme.init(theme);
  59. // Get.put(theme);
  60. // print('Global set theme end');
  61. // print('Lab Global init end');
  62. // }
  63. // /// TODO 服务器地址 配置部分
  64. // static String get gateway => "http://192.168.6.103:7312";
  65. // /// rpc
  66. // static void _initRpc() {
  67. // _updateRpcHostPath(gateway);
  68. // // _updateRpcHostPath("http://api2.flyinsono.com");
  69. // //监听服务地址更新
  70. // // bus.on(
  71. // // bus.Keys.SERVER_ADDRESS_CHANGED,
  72. // // (arg) {
  73. // // _updateRpcHostPath(arg);
  74. // // Future.delayed(
  75. // // Duration(milliseconds: 100),
  76. // // () {
  77. // // // 等rpc先处理再获取最新服务地址
  78. // // // TODO: 更改静态资源路径
  79. // // fRootBundle.setResourcePath(
  80. // // "${rpc.currentHostAddress}:9001/static/themes");
  81. // // },
  82. // // );
  83. // // },
  84. // // );
  85. // }
  86. // /// 初始化资源包
  87. // static void _initAssetBundle() {
  88. // if (kIsWeb) {
  89. // final jsVersion = js.context["serviceWorkerVersion"];
  90. // String version = jsVersion?.toString() ??
  91. // "debug_${DateTime.now().millisecondsSinceEpoch}";
  92. // _assetBundle = WebPlatformAssetBundle(
  93. // rootPath: js.context["STATIC_ROOT"]!.toString(),
  94. // version: version,
  95. // );
  96. // } else {
  97. // _assetBundle = rootBundle;
  98. // }
  99. // }
  100. // static void _updateRpcHostPath(String hostPath) {
  101. // final uri = Uri.parse(hostPath);
  102. // rpc.setServerHost("${uri.host}:${uri.port}", uri.scheme == 'https');
  103. // rpc.clearCache();
  104. // }
  105. // // 国际化
  106. // static Future<void> _initI18n() async {
  107. // FI18n.setAssetBundle(assetBundle);
  108. // final curLocale = Store.app.locale;
  109. // var bookOptions = [
  110. // FTrKeybookOption.ChineseOption,
  111. // FTrKeybookOption.EnglishOption,
  112. // FTrKeybookOption.RussianOption,
  113. // FTrKeybookOption.SpanishOption,
  114. // FTrKeybookOption.RomaniaOption,
  115. // ];
  116. // await FI18n.init((locale) => Get.updateLocale(locale), bookOptions);
  117. // await FI18n.load(curLocale);
  118. // Get.put(FI18n.ins);
  119. // }
  120. // }