如何调试SwiftUI应用中的「无提示」崩溃问题
SwiftUI无提示崩溃排查求助
我在SwiftUI应用中遭遇「无提示」崩溃已有一段时间,该问题具有一定可复现性,仅在从ScreenA切换到ScreenB时触发(并非每次切换都会发生)。切换逻辑代码如下:
ZStack { switch(router.currentScreen) { case .screenA: ScreenA() case .screenB: ScreenB() } } .animation(.easeOut(duration: 0.5), value: router.currentScreen)
注:崩溃并非由上述代码导致,仅作上下文参考。
崩溃发生时Xcode无断点触发、无堆栈跟踪、控制台无输出;若连接调试器运行,会出现如下错误:
Lost connection to the debugger. Domain: IDEDebugSessionErrorDomain Code: 22 User Info: { DVTErrorCreationDateKey = "2024-03-25 19:04:52 +0000"; IDERunOperationFailingWorker = DBGLLDBLauncher; }
未连接调试器时,应用直接闪退,且无法找到任何崩溃记录。
已尝试的排查方法
- 设置「所有Objective-C异常」断点(未触发)
- 设置「所有运行时问题」断点(未触发)
- 通过Xcode「设备与模拟器」查看近期日志(无相关记录)
- 通过Xcode「设备与模拟器」打开控制台(设备端无内容)
- 检查Crashlytics(显示100%无崩溃)
- 在Xcode调试导航器监控内存(从约60MB升至120MB,未达崩溃阈值)
- 执行Product -> Analyze(成功但无有效信息)
- 使用Instruments -> Leaks检测(未发现内存泄漏)
- 联系Tim Cook(未获回复)
请问还有哪些方法可以排查该崩溃原因?
内容的提问来源于stack exchange,提问作者soleil
相关产品推荐
相关产品推荐

