diff --git a/lib/app/utils/account_guard.dart b/lib/app/utils/account_guard.dart new file mode 100644 index 0000000..1da5e46 --- /dev/null +++ b/lib/app/utils/account_guard.dart @@ -0,0 +1,21 @@ +import 'package:get/get.dart'; +import 'package:kaer_with_panels/app/common/app_run_data.dart'; +import 'package:kaer_with_panels/app/widgets/dialogs/hi_dialog.dart'; +import 'package:kaer_with_panels/app/routes/app_pages.dart'; + +Future ensureAccountExists() async { + final rawAccount = KRAppRunData.getInstance().kr_account.value; + final account = rawAccount?.trim(); + if (account == null || account.isEmpty || account.toLowerCase() == 'null') { + await HIDialog.show( + message: '未检测到账号信息,请重试初始化', + confirmText: '重试', + preventBackDismiss: true, + onConfirm: () { + Get.offAllNamed(Routes.KR_SPLASH); + }, + ); + return false; + } + return true; +}