Xcode 27 下 HBuilderX 运行 iOS 模拟器报错 `Unable to find application named 'Simulator'` 的解决办法

💡 原文中文,约2200字,阅读约需6分钟。
📝

内容提要

Xcode 27 不再附带 Simulator.app,模拟器界面并入 DeviceHub.app,导致 HBuilderX 运行 iOS 模拟器时报错找不到 Simulator。解决办法:在 /Applications 下创建名为 Simulator.app 的转发壳,将 open -a Simulator 转发给 DeviceHub,并注册到 LaunchServices,重启 HBuilderX 即可恢复。

🔎

延伸解读

问题根源:Xcode 27 移除了 Simulator.app

Xcode 27 不再附带 Simulator.app,模拟器界面被整合进 DeviceHub.app。但 HBuilderX 启动模拟器时仍执行 open -a Simulator,系统找不到该应用,因此报错。模拟器核心组件(simctl、运行时、设备)并未损坏,只是启动方式变了。

临时方案:创建转发壳并注册

在 /Applications 下创建名为 Simulator.app 的转发壳,其可执行文件将 open -a Simulator 转发给 DeviceHub.app,并通过 lsregister 注册到 LaunchServices。这样 HBuilderX 的 open -a Simulator 就能找到并打开 DeviceHub,恢复原有流程。

使用注意与撤销方法

重启 HBuilderX 后重新运行到 iOS 模拟器即可。若 DeviceHub 未自动显示模拟器画面,需在左侧设备列表点击对应 iPhone。想撤销时,直接删除 /Applications/Simulator.app 即可;等 HBuilderX 官方适配 Xcode 27 后也可删除。

❓

Q&A

Xcode 27 下 HBuilderX 运行 iOS 模拟器报错 Unable to find application named 'Simulator' 是什么原因?

Xcode 27 起不再附带 Simulator.app,模拟器界面并入了 DeviceHub.app。HBuilderX 启动模拟器时写死执行 open -a Simulator,但系统中已没有名为 Simulator 的应用,因此启动失败。

如何解决 Xcode 27 下 HBuilderX 找不到 Simulator 的问题?

在 /Applications 下创建一个名为 Simulator.app 的转发壳,将 open -a Simulator 转发给 DeviceHub,并注册到 LaunchServices,然后重启 HBuilderX 即可。

创建 Simulator.app 转发壳的具体步骤是什么?

1. 创建目录:mkdir -p "/Applications/Simulator.app/Contents/MacOS";2. 写入 Info.plist 文件;3. 创建可执行脚本 SimulatorLauncher,内容为 exec /usr/bin/open -a "/Applications/Xcode.app/Contents/Applications/DeviceHub.app" "$@";4. 赋予执行权限:chmod +x;5. 注册到 LaunchServices:lsregister -f /Applications/Simulator.app。

如何验证 Simulator.app 转发壳是否生效?

在终端执行 open -a Simulator,如果 DeviceHub 正常打开,则说明配置成功。

如果 DeviceHub 打开后没有自动显示模拟器画面怎么办?

在 DeviceHub 左侧设备列表中点击对应的 iPhone 即可显示模拟器画面。

如何撤销对 Simulator.app 的修改?

直接删除 /Applications/Simulator.app 即可。等 HBuilderX 官方适配 Xcode 27 后也可以删除。

🏷️

标签

➡️

继续阅读