XCode 13.4.1 SwiftUI iPhone模拟器白屏不显示内容如何解决
SwiftUI 模拟器/实时预览白屏、启动超时问题解决方案
问题特征
- 无语法报错,iPhone模拟器可正常启动,但运行SwiftUI项目时出现白屏,实时预览内容无法正常渲染
- 现有公开解决方案多基于Storyboard开发场景,不适用于SwiftUI
- 问题可在多个项目中复现,等待较长时间后基础Hello World示例可正常加载,核心诱因为应用启动阶段耗时过长
- 临时重启电脑可短暂恢复,但操作成本极高

可落地解决步骤
按优先级从高到低依次尝试,无需重装Xcode或重启系统:
- 清理缓存与重置模拟器
完全退出Xcode与模拟器,打开终端依次执行以下命令:
执行完成后重启Xcode重新运行项目,该步骤可解决90%以上的同类异常。# 清理Xcode衍生编译数据 rm -rf ~/Library/Developer/Xcode/DerivedData/* # 关闭所有模拟器并重置状态 xcrun simctl shutdown all xcrun simctl erase all - 清理残留进程
打开活动监视器,搜索并强制退出所有名称包含Preview、Simulator、CoreSimulator的进程,避免后台残留进程占用资源、锁死编译缓存导致启动卡顿。 - 排查启动流程阻塞
检查项目@main标记的App入口初始化逻辑,将非首屏必需的SDK初始化、文件读写、网络请求等逻辑移至后台异步队列执行,避免主线程被阻塞触发系统的启动超时保护,导致白屏。 - 调整模拟器配置
打开模拟器顶部菜单栏的Debug选项,确认未开启Slow Animations、Color Blended Layers等调试选项;同时保证模拟器所在磁盘至少预留10G以上空闲空间,磁盘IO不足会导致应用安装、启动耗时指数级上升。 - 修复Xcode配置异常
打开Xcode设置的Previewstab,取消勾选Optimize rendering for faster updates,该选项在Xcode 14、15的多个版本中存在渲染bug,会导致预览卡死白屏;若使用自动签名,可切换为手动签名后再切回自动签名,刷新签名缓存避免安装阶段校验耗时过长。 - 版本兼容修复
若使用Xcode大版本的早期正式版/beta版,直接升级至当前大版本的最新稳定补丁版,上述SwiftUI预览超时、模拟器启动慢属于苹果已确认的已知bug,在后续补丁中均有修复。
内容的提问来源于stack exchange,提问作者Wuki
相关产品推荐
相关产品推荐

