导读: 最近在真机调试的过程中,突然出现了在 App 启动的时候长时间挂起卡顿现象,每次编译运行都会卡在启动界面近乎 1 分钟的情况,绝对令人崩溃。
产生现象
最开始的时候,是在编译时突然弹出了一个弹框(未及时截图),大致的意思是:真机调试时开启了一个状态,会增加编译运行时长。
当时也没太在意,就 默认
勾选了。然后就出现了如此令人崩溃的情况,每次编译运行都会卡在启动界面,最开始以为是 Crash
了,然而并没有,日志栏也没有打印日志,所以 一脸懵逼
。
后经过查询相关文档,发现也有不少的程序猿们遇到了同样的问题,基本上是有如下几个现象:
- 当连接 Xcode 真机调试时,在 App 启动后,会出现
卡死现象
,少则几十秒,多则几分钟,才会正式进入 App 界面; - Xcode 底部日志栏会因为卡顿,不会有任何日志打印,所以并没有进入到
AppDelegate
中的didFinishLaunchingWithOptions
方法中; - 在项目工程进程面板界面
Show the Debug navigator
,会发现所有数值全部为zero
,所以实际上 App 并没有正式运行起来。
问题排查
在 Xcode 调试过程中,尤其是真机调试过程中,我们需要下载设备(真机、模拟器)对应系统版本的支持文件,已保证 Xcode 可以兼容对应的系统正常调试。
由于 Xcode 是向下兼容的开发工具,所以当版本兼容的情况下,Xcode 会自动为我们下载指定的支持文件。
文件路径如下:
~/Library/Developer/Xcode/iOS DeviceSupport
猜测具体的原因应该是出现了兼容问题:
- 当前 Xcode 自动下载的或已经存在的支持文件与当前真机所需支持文件不兼容引起的。
问题解决
所以当我们知道原因后,只需要将对应支持文件删除,让 Xcode 重新下载即可。
步骤一:
任意文件夹通过 Command + Shift + G
快捷键,进入指定文件夹:
~/Library/Developer/Xcode/iOS DeviceSupport
删除与当前真机系统版本相对应的支持文件。
步骤二:
通过菜单栏:Window -> Devices and Simulators
进入 Devices
选择栏;
选中对应设备右击选中 Unpair Device
,解除对当前设备的信任;
之后该设备再次连接 Xcode 时会重新添加信任,并自动下载当前设备所需的支持文件,然后再次编译运行就正常了。
作者:苜蓿鬼仙
链接:https://juejin.cn/post/7086283334002671652
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
标签:文件,真机,Xcode,iOS,App,调试 From: https://www.cnblogs.com/xzb7/p/17144814.html