fix: 更新诸多bug

This commit is contained in:
2026-01-08 03:49:59 -08:00
parent 8477c2e343
commit eb4fad64cb
11 changed files with 133 additions and 79 deletions
@@ -11,10 +11,10 @@ import '../../../utils/kr_common_util.dart';
import '../../../localization/app_translations.dart';
import '../../../utils/kr_log_util.dart';
import 'package:flutter/foundation.dart';
import '';
import 'package:flutter/widgets.dart';
/// 订单状态控制器(参考 Tauri 项目实现)
class KROrderStatusController extends GetxController {
class KROrderStatusController extends GetxController with WidgetsBindingObserver {
/// API服务
final KRSubscribeApi kr_subscribeApi = KRSubscribeApi();
final KRSubscribeService kr_subscribeService = KRSubscribeService();
@@ -99,6 +99,9 @@ class KROrderStatusController extends GetxController {
kr_checkPaymentStatus();
// 启动轮询和倒计时
kr_startCheckingPaymentStatus();
// 添加生命周期监听
WidgetsBinding.instance.addObserver(this);
}
@override
@@ -114,9 +117,25 @@ class KROrderStatusController extends GetxController {
}
kr_timer?.cancel();
kr_countdownTimer?.cancel();
// 移除生命周期监听
WidgetsBinding.instance.removeObserver(this);
super.onClose();
}
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
super.didChangeAppLifecycleState(state);
if (state == AppLifecycleState.resumed) {
if (kDebugMode) {
print('📱 App 恢复前台,立即更新倒计时和订单状态');
}
// 立即触发一次倒计时更新
kr_updateCountdown();
// 立即检查一次订单状态
kr_checkPaymentStatus();
}
}
/// 开始检查支付状态(参考 Tauri 项目:5秒轮询一次)
void kr_startCheckingPaymentStatus() {
if (kDebugMode) {