From 9a62183a2c7bc7a10864579324b3ccec76659792 Mon Sep 17 00:00:00 2001 From: edwinQQQ Date: Mon, 20 Oct 2025 18:14:55 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=20AppDelegate=20?= =?UTF-8?q?=E4=BB=A5=E4=BC=98=E5=8C=96=E5=90=AF=E5=8A=A8=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=92=8C=20UI=20=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 主要变更: 1. 新增 setupUIAppearance 和 setupConfig 方法,提升代码结构和可读性。 2. 移除冗余的 iOS 15 适配代码,集中管理 UI 外观设置。 3. 更新 EPConfigManager 的调用逻辑,确保配置成功后初始化 NIMSDK。 4. 引入 ignoreVAPLog 方法,简化日志处理逻辑。 此更新旨在提升应用启动效率和代码的可维护性。 --- YuMi/Appdelegate/AppDelegate.m | 36 ++++++++++++++++++++++++---------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/YuMi/Appdelegate/AppDelegate.m b/YuMi/Appdelegate/AppDelegate.m index 26ca932..d12cfe6 100644 --- a/YuMi/Appdelegate/AppDelegate.m +++ b/YuMi/Appdelegate/AppDelegate.m @@ -55,14 +55,32 @@ void qg_VAP_Logger_handler(VAPLogLevel level, const char* file, int line, const self.window.rootViewController = launchScreenVC; [self.window makeKeyAndVisible]; - [VAPView registerHWDLog:qg_VAP_Logger_handler]; + [self setupUIAppearance]; + + [self setupConfig]; + + return YES; +} +- (void)setupUIAppearance { + if (@available(iOS 15, *)) { + [[UITableView appearance] setSectionHeaderTopPadding:0]; + } +} + +- (void)setupConfig { // 冷启动配置:client/init → client/config,由 EPConfigManager 统一调度 @kWeakify(self); [[EPConfigManager shared] startColdBootWithOnSuccess:^{ + @kStrongify(self); + if (!self) return; + // 配置成功,初始化 NIMSDK 并进入主页面 + @kWeakify(self); [[EPNIMManager sharedManager] initializeWithCompletion:^(NSError * _Nullable error) { @kStrongify(self); + if (!self) return; + if (error) { NSLog(@"[AppDelegate] NIMSDK 初始化失败: %@", error); } else { @@ -73,6 +91,8 @@ void qg_VAP_Logger_handler(VAPLogLevel level, const char* file, int line, const }]; } onFailure:^(NSString * _Nonnull errorMessage) { @kStrongify(self); + if (!self) return; + // 配置失败,显示错误提示 UIAlertController *alert = [UIAlertController alertControllerWithTitle:YMLocalizedString(@"提示") message:errorMessage @@ -80,16 +100,8 @@ void qg_VAP_Logger_handler(VAPLogLevel level, const char* file, int line, const [alert addAction:[UIAlertAction actionWithTitle:YMLocalizedString(@"确定") style:UIAlertActionStyleDefault handler:nil]]; [self.window.rootViewController presentViewController:alert animated:YES completion:nil]; }]; - - if (@available(iOS 15, *)) { - [[UITableView appearance] setSectionHeaderTopPadding:0]; - } - - return YES; } -// MARK: - Helper Methods - - (void)loadMainPage { AccountModel *accountModel = [[AccountInfoStorage instance] getCurrentAccountInfo]; if (accountModel == nil || @@ -104,9 +116,13 @@ void qg_VAP_Logger_handler(VAPLogLevel level, const char* file, int line, const [self checkAndShowSignatureColorGuide]; }); } + + [self ignoreVAPLog]; } -// 移除 EPConfig 通知相关方法,改用 block 回调 +- (void)ignoreVAPLog { + [VAPView registerHWDLog:qg_VAP_Logger_handler]; +} /// 检查并显示专属颜色引导页 - (void)checkAndShowSignatureColorGuide {