iPhone iOS 更新 14.7 后的 Xcode 12.4“不支持的操作系统版本”

时间:2021-06-06 20:17:35

标签: ios xcode

将 iPhone iOS 版本更新到 14.7+ 后,Xcode 12.4 无法再构建到该 iPhone 设备上。

在Xcode时选择构建目的地(产品>目的地> [设备]或从下面显示的UI下拉列表)新更新的iPhone将在它旁边 (unsupported OS version)

<块引用>

xcode build destinations dropdown

iPhone 列出了“(不支持的操作系统版本)”。

<块引用>

unsupported OS version

无法升级到 Big Sur / Xcode 12.5

我一直在使用 Mac OS Catalina(旧硬件)并且无法升级到需要 Big Sur 的 Xcode 12.5

我们如何向 Xcode 添加/更新设备支持以构建到不受支持的 iPhone 版本(iOS 14.7+)?

4 个答案:

答案 0 :(得分:53)

向 Xcode 添加/更新不支持的 iOS 版本

Apple 没有更新 Xcode 12.4 以支持 iOS 14.6 的计划。

但我们可以复制 Xcode 版本 14.5 DeviceSupport 文件 (download if needed) 并将它们粘贴到名为 14.6 的目录中。

Xcode 设备支持目录

Xcode DeviceSupport 目录位于: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

(在 Finder 中,右键单击 /Applications/Xcode 并选择 Show Package Contents

Xcode DeviceSupport directories 目录列表将包括 14.6(甚至可能不包括 14.5)。

(如果 14.5 目录已经存在,只需复制/粘贴该目录以复制它并将其重命名为 14.6,否则...)

获取设备支持文件

获取设备支持文件的最快方法来自这个(非官方)Github 项目:

https://github.com/iGhibli/iOS-DeviceSupport

特别是,我们想要 12.5 发布候选 zip 文件(14.6 尚不存在):

https://github.com/iGhibli/iOS-DeviceSupport/blob/master/DeviceSupport/14.5(FromXcode_12.5_Release_Candidate_xip).zip

在 Github 的 12.5 Release Candidate 中,下载这个 .zip

<块引用>

download 12.5 DeviceSupport release candidate files

文件下载后,双击 .zip 文件解压到 14.5 目录:

<块引用>

14.5 DeviceSupport files

在 Xcode 中添加 DeviceSupport 14.5 / 14.6

将 14.5 目录复制并粘贴到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 中。

复制 14.5 目录并将其粘贴到同一目录中(到 DeviceSupport),然后将该目录重命名为 14.6。

如果 Xcode 已打开,则 Clean Build Folder(在 Product 菜单标题下)。我不确定这是否绝对必要。 (下次连接手机时,Xcode 还会更新和处理设备本身的缓存文件,这需要几分钟时间。)

关闭 Xcode(如果打开)。

通过 USB 连接 iPhone。如果您尚未更新 Mac OS 以支持 14.6 上的手机,您的 Mac 可能会要求您更新 Mac OS 软件以连接到您的 iOS 14.6 设备。我接受了这个更新请求。花了几分钟才完成。 (我相信这与 Xcode 无关,而与 iTunes 和其他 Mac 服务等无关)

此后我需要重新启动我的 Mac。不确定是否每个人都需要这样做。

打开Xcode。打开 Runner 旁边的构建目标下拉菜单,您的 iPhone 14.6 设备应该(希望)旁边不再有“(不支持的操作系统版本)”注释。

<块引用>

Xcode Build Destinations 14.6 supported

现在作为 Xcode 12.4 下受支持的 14.6 手机设备,您应该能够将应用的调试、配置和发布版本构建到您的物理 iPhone。

其他问题

<块引用>

“在为开发准备设备时遇到错误。请检查设备和模拟器窗口”

答案 1 :(得分:1)

这可能是一个临时解决方案,但以下对我有用:

  1. 进入contents/Developer/platform/iPhoneOS.platform/DeviceSupport
  2. 复制您之前的 iOS 14.5 设备支持文件或旧版本
  3. 粘贴到同一个文件夹并将iOS编号更改为14.6
  4. 重启 Xcode,它应该能让你在手机上运行你的代码

仅供参考,这对我来说也适用于不同的 iOS,因此如果有人卡住或无法在手机上运行 Xcode,它可能会对以后的版本有所帮助。

答案 2 :(得分:0)

在此处下载 iOS 设备支持:https://youtu.be/akhC3W4S9a0?t=21

如何:

  • 下载上面列出的您需要的版本;

  • 解压;

  • 关闭Xcode;

  • 按路径复制并粘贴解压后的文件夹:

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/

  • 重启Xcode

答案 3 :(得分:0)

@Baker 的解决方案对我有用

就我而言,我有 xcode 12.3 并且想在我的 iPhone 上运行应用程序 ios 14.6

  1. 关闭xcode

  2. 下载14.5(FromXcode_12.5_Release_Candidate_xip).zip

  3. 解压 14.5(FromXcode_12.5_Release_Candidate_xip).zip 它会给你文件夹 14.5

  4. 将文件夹 14.5 复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

  5. 然后将文件夹 14.5 复制到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 并重命名为 14.6

  6. 在第 4 步之后,您应该有类似 ../iPhoneOS.platform/DeviceSupport/14.5../iPhoneOS.platform/DeviceSupport/14.6

  7. 启动 xcode 运行您的应用

如果 iPhone 卡在 iPhone is busy: Preparing debugger support for iPhone Xcode will continue when iPhone is finished. 上,您可能需要重新启动它