Xcode14 下载 watchOS Simulator 失败

原文地址: Xcode14 下载 watchOS Simulator 失败

Xcode14 为了缩减体积, 将部分组件并未内置在安装包中. 当工程添加了 Watch App 支持, 开始编译时 Xcode 会自动下载 Apple Watch 的模拟器, 否则无法继续编译. 但是使用 Xcode内置的下载又经常下载失败, 报错是网络超时.

此时可以移除 Watch 相关的 Target 来临时解决问题, 但是最终还是需要下载模拟器, 再次反复经历失败-下载-失败.
Xcode 内置的下载很容易失败, 身边统计学基本都需要下载 4/5 次才能成功(下载速度快, 但是下载到一半就莫名其妙超时了), 而且下载不支持断点续传, 每次重新下载, 导致效率十分低下.

我们可以直接在苹果开发者网站下载对应的模拟器, 然后执行如下

sudo xcode-select -s /Applications/Xcode.app/

xcodebuild -runFirstLaunch

// 路径自行修改下
xcrun simctl runtime add "~/Downloads/watchOS_9.1_Simulator_Runtime.dmg" 

simctl 会校验 dmg 文件, 并将模拟器放到合适的位置, 执行完成之后 Xcode 设置页会成这样

GncArC9JT5QZbuB.jpg

解决办法参考苹果链接 Install and manage Simulator runtimes from the command line

苹果开发网站找不到自己想要下载的模拟器怎么办?

苹果开发者网站经常不一定有我们想要下载的包, 难道还是回去死磕 Xcode 自带的下载吗? 我们可以使用命令行获取下载地址, 然后自行下载

  1. 先关掉 Xcode (cmd + Q)
  2. 命令行启动 XCode (使用 Mac 自带的 Terminal 或者 iterm2 都可以), 命令如下
    /Applications/Xcode.app/Contents/MacOS/Xcode
    
  3. 在 Xcode 中下载该模拟器(Settings->Platform 页面下自行选择)
  4. 在下载页面取消下载(取消下载会触发失败日志)
  5. 在命令行失败日志中获取下载地址, 类似这样
    2023-12-25 18:23:35.903 Xcode[52215:1841435]  DVTDownloadable: Download Cancelled. Downloadable: https://devimages-cdn.apple.com/downloads/xcode/simulators/com.apple.pkg.iPhoneSimulatorSDK15_0-15.0.1.1633542405.dmg.
    
  6. 使用浏览器下载这个https://devimages-cdn.apple.com/downloads/xcode/simulators/com.apple.pkg.iPhoneSimulatorSDK15_0-15.0.1.1633542405.dmg.链接就好(下载别的模拟器链接不一样)
  7. 文件移到 ~/Library/Caches/com.apple.dt.Xcode/Downloads/目录中, 像下面这样, 注意自己改下文件名
    mv com.apple.pkg.iPhoneSimulatorSDK15_0-15.0.1.1633542405.dmg ~/Library/Caches/com.apple.dt.Xcode/Downloads/
    
  8. 回到 Xcode, 重新下载这个模拟器, 就会跳过下载直接安装了
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容