diff --git a/lib/app/modules/kr_home/controllers/kr_home_controller.dart b/lib/app/modules/kr_home/controllers/kr_home_controller.dart index 2031894..d8ca04f 100755 --- a/lib/app/modules/kr_home/controllers/kr_home_controller.dart +++ b/lib/app/modules/kr_home/controllers/kr_home_controller.dart @@ -264,6 +264,7 @@ class KRHomeController extends GetxController with WidgetsBindingObserver { // 延迟同步连接状态,确保状态正确 Future.delayed(const Duration(milliseconds: 500), () { kr_forceSyncConnectionStatus(); + _checkQuickConnectAutoStart(); }); } @@ -1695,7 +1696,6 @@ class KRHomeController extends GetxController with WidgetsBindingObserver { // 强制更新UI update(); KRLogUtil.kr_i('✅ 连接状态同步完成', tag: 'HomeController'); - _checkQuickConnectAutoStart(); } catch (e) { KRLogUtil.kr_e('❌ 强制同步连接状态失败: $e', tag: 'HomeController'); } diff --git a/lib/app/modules/kr_splash/controllers/kr_splash_controller.dart b/lib/app/modules/kr_splash/controllers/kr_splash_controller.dart index 65ebe2f..f4f0694 100755 --- a/lib/app/modules/kr_splash/controllers/kr_splash_controller.dart +++ b/lib/app/modules/kr_splash/controllers/kr_splash_controller.dart @@ -261,16 +261,16 @@ class KRSplashController extends GetxController { // 配置初始化成功后的后续步骤 Future _kr_continueAfterConfig() async { try { + // 用户信息初始化完成后,立即初始化订阅服务 + print('[SPLASH_TIMING] 🔄 开始初始化订阅服务...'); + KRLogUtil.kr_i('[SPLASH_TIMING] 🔄 开始初始化订阅服务', tag: 'SplashController'); + _kr_ensureSubscribeServiceInitialized(); + // 初始化SingBox _logStepTiming('开始SingBox初始化'); await KRSingBoxImp.instance.init(); _logStepTiming('SingBox初始化完成'); - // 用户信息初始化完成后,立即初始化订阅服务 - print('[SPLASH_TIMING] 🔄 开始初始化订阅服务...'); - KRLogUtil.kr_i('[SPLASH_TIMING] 🔄 开始初始化订阅服务', tag: 'SplashController'); - await _kr_ensureSubscribeServiceInitialized(); - // 验证登录状态是否已正确设置 final loginStatus = KRAppRunData.getInstance().kr_isLogin.value; final token = KRAppRunData.getInstance().kr_token; diff --git a/lib/main.dart b/lib/main.dart index 81ad879..07f1b1a 100755 --- a/lib/main.dart +++ b/lib/main.dart @@ -177,6 +177,7 @@ Widget _myApp(GetxTranslations translations, Locale initialLocale) { Routes.HI_USER_INFO, ]; print('routing.current${routing.current}'); + GlobalOverlayService.instance.updateSubscriptionButtonColor(null); if (showButtonRoutes.contains(routing.current)) { GlobalOverlayService.instance.safeShowSubscriptionButton(); } else {