老版本 Xcode 在新 iOS 设备上调试

本文写作于 2019年10月6日 距离今天已有  
  天,请注意文章时效性

补充老版本 Xcode 缺失的 DeviceSupport
如果你有安装新版本的 Xcode,那可以直接拷贝过来,没有的话,可以去这里下载 https://github.com/filsv/iPhoneOSDeviceSupport 。下载完毕后,拷贝到 Xcode/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下,当然也可以加上具体的版本号,以 iOS 13.1.1 为例,文件夹名称就可以写为

13.1.1 (17A854)

其实补充 DeviceSupport 就可以解决一部分一个大版本内无法调试的情况。如果跨大版本,请继续下面的操作

修改 SDK 文件信息

在 Xcode/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs 目录下,复制一份现有的 sdk 文件,并修改为需要的版本,比如我这里就修改为 iPhoneOS13.1.1.sdk

然后 修改 iPhoneOS.sdk 里(不是 iPhoneOS13.1.1.sdk)的 SDKSettings.plist 文件。将原来的版本信息全部改成你需要的,比如我这里都改成 13.1.1。当然那个 DefaultDeploymentTarget 仍然可以按照原来的格式改成 13.1.99。改完保存,可能关闭按钮上显示没有保存,但其实是保存了的。如果不能保存,把文件拖到别的地方,改好后再覆盖回去。

重启 Xcode
一定要重启,不然不会生效